繁体   English   中英

使用数据库检查复选框

[英]Use database to check a checkbox

我有一个页面可以查看带有“编辑”链接的资产。 当我单击链接时,它会转到edit_case.php,该表单具有一个表单来编辑数据库中该行的哪些元素作为复选框。 但是,这些框未将其显示为选中状态。 我有以下代码...

// get already checked box values 
$repop = "SELECT * FROM case_audit WHERE case_id = $case_id";
$popresults = mysqli_query($dbc, $repop);
$row = mysqli_fetch_array($popresults, MYSQLI_ASSOC);

print_r ($row);

print_r确实显示了数据库中的整个记录​​行。 | 1或0,检查|| 没有检查。

表格...

<div id="facepics">
 <label><input type="checkbox" name="Facial1" value="<?php echo $row['frontrest']; ?>" >Front at Rest </label><br>
 <label><input type="checkbox" name="Facial2" value="<?php echo $row['frontbigsmile']; ?>" >Front Big Smille</label><br>
 <label><input type="checkbox" name="Facial3" value="<?php echo $row['profile']; ?>" >Profile</label><br>
 <label><input type="checkbox" name="Facial4" value="<?php echo $row['subvertex']; ?>" >SubMento Vertex</label><br>
</div>

我知道我需要将1设为“选中”,只是不确定如何做到最好。

因此,输入中的checked="true"属性基本上会创建一个选中的复选框。 HTML代码看起来像

<input type="checkbox" checked="true">

您可以按照以下方式进行操作:

<input type="checkbox" name="Facial1" value="frontrest" <?= (intval($row['frontrest']) == 1) ? 'checked' : '';>

还要注意,我更改了属性,并设置了最前面的位置,以便您可以唯一地标识复选框

编辑 :我已经修改了代码

<input type="checkbox" name="Facial1" <?=$row['frontrest']==1?'checked':''?>>

我经常遇到相同的问题,浏览器会忽略checked =“ false”并进行全部检查,因此我使用

<input type="checkbox" checked>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM