gpt4 book ai didi

php - 使用 PHP 和 MYSQL 更新我的表的多行

转载 作者:行者123 更新时间:2023-11-29 19:34:59 25 4
gpt4 key购买 nike

我想创建一个 php 代码,当我单击按钮时,它可以立即更新所有行。已经尝试了我从其他帖子中看到的几种方法,但仍然无法弄清楚。请帮助我......

<table cellspacing="0" cellpadding="1" border=1px; action="" method="post">
<?php
$result=mysqli_query($conn,"SELECT * from subject ");
if($result->num_rows>0)
{
?>
<tr>
<th>Subject Code</th>
<th>Subject</th>
<th>Fees</th>
<th>Status</th>


</tr>
<?php
while($row = mysqli_fetch_assoc($result))
{
if ($row["subject_status"]==="Available")
{$status="Unavailable";}
else $status="Available";
?>

<tr class="alttr1">
<td><?php echo $row["subject_code"]; ?></td>
<td><?php echo $row["subject_name"]; ?></td>
<td>RM<input type="number" name="price[]" value="<?php echo $row["subject_price"]; ?>" ></td>
<td><select name="status[]" ><option value="<?php echo $row["subject_status"]; ?>" ><?php echo $row["subject_status"]; ?></option><option value="<?php echo $status; ?>" ><?php echo $status; ?></option></select></td>


</tr>
<?php
}
?>

</table>
<input type="submit" name="updatebtn" value="Save Changes">
<?php
if (isset($_POST["updatebtn"]))
{
$price = $_POST["price"];
$status = $_POST["status"];

foreach($_POST["price"] as $price)
{
mysqli_query($conn,"UPDATE subject SET subject_price='$price' ");
}

foreach($_POST["status"] as $status)
{
mysqli_query($conn,"UPDATE subject SET subject_status='$status' ");
}
header("location: subjectmanage.php");

}

最佳答案

将包含主题代码的隐藏字段添加到表单中。

     <tr class="alttr1">
<td><?php echo $row["subject_code"]; ?><input type="hidden" name="code[]" value="<?php echo $row["subject_code"]; ?>"></td>
<td><?php echo $row["subject_name"]; ?></td>
<td>RM<input type="number" name="price[]" value="<?php echo $row["subject_price"]; ?>" ></td>
<td><select name="status[]" ><option value="<?php echo $row["subject_status"]; ?>" ><?php echo $row["subject_status"]; ?></option><option value="<?php echo $status; ?>" ><?php echo $status; ?></option></select></td>
</tr>

那么更新代码可以如下所示:

<?php
if (isset($_POST["updatebtn"]))
{
$codes = $_POST["code"];
$prices = $_POST["price"];
$statuses = $_POST["status"];

foreach($codes as $i => $code)
{
$code = mysql_real_escape_string($code);
$price = mysql_real_escape_string($prices[$i]);
$status = mysql_real_escape_string($statuses[$i]);
mysqli_query($conn,"UPDATE subject SET subject_price='$price', status = '$status' WHERE subject_code = '$code'");
}
}

关于php - 使用 PHP 和 MYSQL 更新我的表的多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41596753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com