首页  >  文章  >  后端开发  >  如何使用单个表单提交更新 MySQL 数据库中的多行?

如何使用单个表单提交更新 MySQL 数据库中的多行?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-06 02:30:02649浏览

How to Update Multiple Rows in a MySQL Database Using a Single Form Submission?

使用 MySQL 发布表单并更新多行

在这个场景中,我们的目标是创建一个表单,使后端用户能够修改标题以及与特定图库关联的多张照片的标签。提交表单后,这些更改应同时应用于数据库中的所有选定行。

表单结构

提供的代码使用图库 ID 从数据库中获取照片并将它们显示为带有标题和标签输入字段的表单。这些字段链接到包含照片 ID 的隐藏输入。

// Fetch photos from the database
$result = $db->prepare("SELECT * FROM photos WHERE gallery_id = :gallery_id ");
$result->bindParam(':gallery_id', $id);
$result->execute();

// Generate input fields for each photo
echo '<form action="" method="POST">';
echo "<ul id='photos'>";

for ($i = 0; $row = $result->fetch(); $i++) {
    // Get photo details
    $id = $row['id'];
    $title = $row['title'];
    $tags = $row['tags'];
    $src = $row['src'];

    // Create input fields
    echo "<li><a class='lightbox' href='images/$src'><img src='images/$src' id='$id' alt='$title' /></a><br />";
    echo "<input type='text' name='photo_title[]' value='$title' /><br />"; // ***** Adjusted the array submission *****
    echo "<input type='text' name='photo_tags[]' value='$tags' /><br />"; // ***** Adjusted the array submission *****
    echo "<input type='hidden' name='photo_id[]' value='$id' />"; // ***** Adjusted the array submission *****
    echo "</li>";
}

echo "</ul>";
echo '<div style="clear:both"></div>';

以上是如何使用单个表单提交更新 MySQL 数据库中的多行?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn