:::

7-5 加入儲存修改(更新)功能

  1. 更新資料的SQL語法:
    UPDATE `資料表名稱` SET `欄位1`='值1', `欄位2`='值2', ... [WHERE 篩選條件] [LIMIT 筆數]

     

  2. 編輯完送出後,必須能儲存修改,所以我們修改 admin.php,更新後一般會直接導向到前台的該文章完整頁面
    switch ($op) {
        ...略...
    
        // 更新文章
        case 'update':
            update($id);
            header("location: index.php?op=show&id=$id");
            exit;
    
        ...略...
    }

     

  3. 然後新增 update() 函式(可以直接拿 store() 來修改),我們暫時先不管檔案上傳的部份,只要先讓文章內容能修改即可。
    // 更新文章
    function update($id)
    {
        global $pdo;
    
        if ($_SERVER['REQUEST_METHOD'] === 'POST') {
            // 取得表單值
            $title = $_POST['title'];
            $content = $_POST['content'];
            $author = $_POST['author'];
            $date = $_POST['date'];
            $category = $_POST['category'];
            try {
                // 準備SQL語句
                $sql = "UPDATE `news` SET `title` = ?, `content` = ?, `author` = ?, `date` = ?, `category` = ? WHERE `id` = ?";
    
                // 預備語句
                $stmt = $pdo->prepare($sql);
    
                // 綁定參數並執行語句
                $stmt->execute([$title, $content, $author, $date, $category, $id]);
            } catch (PDOException $e) {
                echo "更新失敗:" . $e->getMessage();
            }
        }
        return $id;
    }

     

  4. 此時,可以試試有沒有修改效果
     

:::

書籍目錄

展開 | 闔起

快速登入


http%3A%2F%2Fcampus-xoops.tn.edu.tw%2Fmodules%2Ftad_book3%2Fpage.php%3Ftbdsn%3D1833%26tbsn%3D52

計數器

今天: 1643164316431643
昨天: 4159415941594159
總計: 8069161806916180691618069161806916180691618069161