如果值存储在数据库中,如何选中复选框?

时间:2014-05-19 08:29:57

标签: php

我在从数据库中检索复选框时遇到问题。 实际上我是通过使用在数据库中插入值的输入表单来编辑表单。 我遇到问题与复选框和其他输入工作正常。

我的代码看起来像

<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,则不会选中复选框。

我感谢任何帮助或建议。

提前致谢!

2 个答案:

答案 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/>