我在从数据库中检索复选框时遇到问题。 实际上我是通过使用在数据库中插入值的输入表单来编辑表单。 我遇到问题与复选框和其他输入工作正常。
我的代码看起来像
<input type="checkbox" name="proizvodi[]" value="0" <?if ($row['PROIZVODI'] == '0') $checked = 'checked="checked"'; ?> checked="checked"><b>product1<b/> <input type="checkbox" name="proizvodi[]" value="1" <?if ($row['PROIZVODI'] == '1') $checked = 'checked="checked"'; ?> checked="checked"><b>product2<b/> <br/>
<input type="checkbox" name="proizvodi[]" value="2" <?if ($row['PROIZVODI'] == '2') $checked = 'checked="checked"'; ?> checked="checked"><b>product3</b> <br/>
为了更清楚,我只想检查存储在db中的复选框。例如,如果值1存储在db中,则将检查product1复选框,如果未存储值1,则不会选中复选框。
我感谢任何帮助或建议。
提前致谢!
答案 0 :(得分:1)
这个怎么样?您需要回显'checked="checked"'
并且不要将其分配给变量
<input type="checkbox" name="proizvodi[]" value="0" <?php if (strpos($row['PROIZVODI'],'0') !== false) echo 'checked="checked"'; ?>><b>product1<b/>
<input type="checkbox" name="proizvodi[]" value="1" <?php if (strpos($row['PROIZVODI'],'1') !== false) echo 'checked="checked"'; ?>><b>product2<b/> <br/>
<input type="checkbox" name="proizvodi[]" value="2" <?php if (strpos($row['PROIZVODI'],'2') !== false) echo 'checked="checked"'; ?>><b>product3</b> <br/>
答案 1 :(得分:0)
写下这样的行,不要让它变得更难:
<input type="checkbox" name="proizvodi[]" value="0" <?php if ($row['PROIZVODI'] == '0') { ?> checked="checked" <?php } ?> /><b>product1<b/>