我正在检查数据库,如果匹配了一个特定的字符串,则会检查相应的checkbox
,但错误是每当匹配一个字符串时,我会检查两个checkboxes
,一个{ {1}}和另一个unchecked
。
这是我的代码:
checked
答案 0 :(得分:1)
<input type="checkbox" value="<?php echo $row['spr']; ?>" <?php if(in_array("Cricket",$focus)) { ?> checked="checked" <?php } ?> name="focus[]" />Cricket
我希望这会正常运作。如果它不起作用,请告诉我。
答案 1 :(得分:1)
<?php
$result = mysqli_query($sql,"SELECT * FROM grsi ");
while($row = mysqli_fetch_array($result))
{
$focus=explode(",",$row['spr']);
if(in_array("Cricket",$focus)) {
?>
<input type="checkbox" value=<?php echo $row['spr']; ?> checked="checked" name="focus[]" />Cricket
<?php
}else{
?>
<input type="checkbox" value=<?php echo $row['spr']; ?> name="focus[]" />Checkbox name
<?php
}
}
exit();
&GT;
答案 2 :(得分:1)
您的输入复选框位于while循环内,这意味着如果数据库中有2行,则会有2个输入框。
基于您的SQL语句,您正在选择所有记录(没有WHERE语句)。因此,如果表中有10行,则会有10个输入框。确保您只选择所需的行。