//user id //enable checkbox /> //enable checkbox -6ren">
gpt4 book ai didi

php - 如何使用php mysql更新多个更新

转载 作者:行者123 更新时间:2023-11-29 23:06:37 25 4
gpt4 key购买 nike

如何使用 php mysql 的复选框来更新数据库中的多个更新

<form  action="enableprofile1.php" method="post">

//user id
<input type="hidden" name="id1[]" id="id1[]" value="<?php echo $sn; ?>" />

//user id

//enable checkbox
<input type="checkbox" name="enable[]" id="enable[]" value="1" <?php if($en=='1'){ echo 'checked';} ?> />
//enable checkbox
<input type="submit" name="save" value="Save" class="fontBold">
</form>

我可以知道当我取消选中复选框时我可以存储像 0 这样的值

最佳答案

注意:

  • 假设您使用 MySQLi 准备语句来编写此代码
  • 我以注释的形式解释了代码 /* */
  • 我知道您的 HTML 代码只是一个示例,但您的复选框的值仅设置为 1。我希望事实并非如此。我还假设这些复选框的值来自您的数据库。
  • 看来您没有包含您的连接或不知道如何建立连接,所以我会立即更新我的答案。
  • 我猜测用户只有两个选择,1 和 0,或者启用和禁用。因此,我再次更新了代码。
  • 别喊吗? (开个玩笑)

您的enableprofile1.php应如下所示:

<?php

/* ESTABLISH CONNECTION */

$con = new mysqli("YourHost", "YourUsername", "YourPassword", "yourDataBaseName"); /* REPLACE NECESSARY DATA */

/* CHECK CONNECTION */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}

if(isset($_POST["save"])){ /* IF SAVE BUTTON IS CLICKED */

/* STORE THE PASSED DATA FROM YOUR FORM VIA POST */
$enable = $_POST["enable"];
$hiddenid = $_POST["id1"];
$total = count($enable); /* COUNT TOTAL ARRAY */

for($x=0;$x<=$total;$x++){ /* RUN A LOOP THAT CHECKS ALL DATA */

if(!empty($enable[$x])){ $todo=1; } /* IF ENABLE IS CHECKED */
else { $todo=0; } /* IF ENABLE IS NOT CHECKED */

$stmt = $con->prepare("UPDATE yourTable SET yourColumn = ? WHERE yourID = ?"); /* REPLACE NECESSARY CONNECTION VARIABLE, TABLE NAME AND COLUMN NAME */
$stmt->bind_param('ss', $todo, $hiddenid[$x]); /* BIND PASSED DATA TO THE QUERY */
$stmt->execute(); /* EXECUTE QUERY */

} /* END OF FOR LOOP */

} /* END OF ISSET SAVE */

?>

将此添加到您的表单中:

...
<?php
$counter=0;

//user id
echo '<input type="hidden" name="id1[$counter]" id="id1[]" value="'.$sn.'" />';

// user id

//enable checkbox
echo '<input type="checkbox" name="enable[$counter]" id="enable[]" value="1" if($en=='1'){ echo 'checked';} />';

$counter=$counter+1; /* INCREMENT $counter FOR EVERY LOOP */

?>
...

关于php - 如何使用php mysql更新多个更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28273021/

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