我的问题是如何在 PHP 中从数据库中检索复选框值。下面的代码不起作用。
<td>Hobby</td>
<?php
$result = mysqli_query($con,"SELECT hobby FROM simple WHERE id = id");
while($row = mysqli_fetch_array($result))
{
$focus = explode(",", $row['hobby']);
?>
<td>
<input type="checkbox" name="hobby[]" value="Cricket" size="17" <?php if(in_array("Cricket",$hobby)) { ?> checked="checked" <?php } ?> >Cricket
<input type="checkbox" name="hobby[]" value="Music" size="17" <?php if(in_array("Music",$hobby)) { ?> checked="checked" <?php } ?> >Music
<input type="checkbox" name="hobby[]" value="Reading" size="17" <?php if(in_array("Reading",$hobby)) { ?> checked="checked" <?php } ?> >Reading
<input type="checkbox" name="hobby[]" value="Study" size="17" <?php if(in_array("Study",$hobby)) { ?> checked="checked" <?php } ?> >Study</td>
<?php
}
?>
</tr>
原文由 Vrajesh Savaliya 发布,翻译遵循 CC BY-SA 4.0 许可协议
改变说法,
到:
此外,您可以使用三元运算符而不是 if else 来最小化代码:
此外,@mapek 建议,您的 SQL 将获取所有记录。
因为
id
永远等于id
。您应该将其更改为:
使用数组最小化此代码的另一个版本: