使用表單資料更新多個MySQL 行
在Web 開發中,通常有一個表單,使用者可以在其中編輯資料庫中的記錄。常見的情況是使用修改後的資料更新同一個表中的多行。這可以使用 PHP 和 MySQL 來實作。
表單結構與資料擷取
初始表單負責呈現要編輯的資料。在此範例中,表單從資料庫中擷取具有特定 GALLERY_id 的所有照片,並使用欄位顯示它們以修改照片標題和標籤。
資料提交與更新
提交表單後,資料將傳送至 PHP 腳本處理。該腳本使用 foreach 循環迭代發布的資料並提取照片 ID、標題和標籤的值。
使用準備好的語句更新行
下一個步驟是更新資料庫中的符合行。為此,使用準備好的語句。它涉及:
循環表單陣列
為了允許更新多行,HTML 表單欄位以陣列形式提交。這是透過在欄位名稱中使用 [] 表示法來實現的:
echo "<input type='text' name='photo_title[]' value='$title' />";
在 PHP 腳本中,使用 foreach 循環存取這些數組,允許腳本迭代資料並相應地更新每一行。
範例程式碼
更新後的PHP 腳本如下所示:
<code class="php">foreach ($_POST['photo_id'] as $key => $photo_id) { $id = $photo_id; $title = $_POST['photo_title'][$key]; $tags = $_POST['photo_tags'][$key]; $sql = "UPDATE photos SET title=?, tags=? WHERE id=?"; $query = $db->prepare($sql); $query->execute(array($title, $tags, $id)); }</code>
按照以下步驟,您可以有效地發佈表單資料和更新MySQL 表中的多行。
以上是如何使用 PHP 更新多個 MySQL 行的表單資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!