用php更新多个复选框

分享于2022年07月17日 mysql php 问答
【问题标题】:用php更新多个复选框(Update multiple checkboxes with php)
【发布时间】:2022-01-25 20:48:06
【问题描述】:

这个问题可能已经被问过很多次了,但我仍然无法找到合适的解决方案来解决我的问题。所以,我有一个 sql 表(id​​-> int 和 status-> tiny-int),需要在没有提交按钮的情况下激活它并保持其当前状态打开或关闭。我找到了解决问题的方法 here 。但是,这仅适用于一个复选框,我需要它用于四个复选框。 我的尝试有点奏效,但我觉得可能有更好的方法。 有人可以给我任何建议吗?

谢谢

>
if (isset($_POST['checkbox1'])) { $sql1="UPDATE switch SET status = '1' WHERE id = '1'"; } else { $sql1="UPDATE switch SET status = '0' WHERE id = '1'"; } $result=$conn->query($sql1); if (isset($_POST['checkbox2'])) { $sql2="UPDATE switch SET status = '1' WHERE id = '2'"; } else { $sql2="UPDATE switch SET status = '0' WHERE id = '2'"; } $result=$conn->query($sql2);

  • fyi,您的第一个复选框元素未正确关闭,最后缺少 >

【解决方案1】:

$('#form') 是 jquery 功能。 https://jquery.com/ 如果要使用 Jquery,需要通过 <script> 标签添加库。但是我看不出有什么理由在这里使用它,您可以使用 Javascript 函数:document.getElementById() 来选择表单 DOM 元素。

所以我建议从: onchange="$('#form').submit();" 改为 onchange="document.getElementById("form").submit();"

https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementById https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/submit

您似乎也忘记在表单之后、if 语句之前添加 <?php 标记。