为什么我使用复选框时不能更新mysql中的数据,我已经尝试删除隐藏的输入类型,但仍然无法正常工作。我认为问题必须在这部分,因为当我尝试添加记录并检查所有复选框时。 然后我会尝试更新它。通过删除其他条目中的检查。数据已更新。删除的检查也会反映在数据库中,但是当我尝试使用更新模块再次添加检查时,它将不会更新。请帮助,我只是一个初学者。
<td><input name="stats3" type="checkbox" id="sh"
value="<?php echo $row["STAT3"]; ?>" <?php echo $row["STAT3"] ? 'checked="checked"' : ''; ?> >Stockholder</td>
答案 0 :(得分:3)
当你有一个复选框并勾选它时,你会得到一个在帖子中返回给服务器的键/值对。
如果未选中该复选框,它实际上不会回复帖子(您可以使用Firebug或print_r($ _ POST)检查此内容
这可能会导致您的问题。
您可以使用:
if(isset($_POST['stats3'])) {
// checked is true
}
或者另一个简单的解决方案是选择列表,其中包含yes和no作为选项,这将始终返回值 - 否则您需要根据帖子中勾选框的存在来设置和取消设置值。
答案 1 :(得分:0)
或者你可以检查
if (isset($_POST['stats3']))
// value received
else
// value not received
答案 2 :(得分:0)
<input name="stats3" type="checkbox" id="sh"
value="
<?php echo $row["STAT3"]; ?>
"
<?php echo $row["STAT3"] ? 'checked="checked"' : ''; ?>
>Stockholder
它对我来说很好,
如果您要使用与“stats3”相同的名称发布多个值,那么您将遇到问题