【发布时间】:2016-07-24 01:12:33
【问题描述】:
我正在尝试做一件非常简单的事情 - 根据传入的连续布尔值设置是否选中复选框。我最初有一个“if then”语句,但结果似乎是随意的。所以我把它缩小到这个,我仍然不明白它发生了什么。
代码如下:
<td><input name="DFlag[]" type="checkbox" <?php if ($row[$i]['DFlag'] = 0) {echo "unchecked";} ?> </td>
数据库中有两行,一个将布尔标志设置为 on (1),另一行设置为 off (0),屏幕上的两行都显示为未选中。
我已将行更改为:
<td><input name="DFlag[]" type="checkbox" <?php if ($row[$i]['DFlag'] = 1) {echo "checked";} ?> </td>
两行都按检查返回。请注意,这两行的所有其他数据都正确填充。只是不是复选框!
如果我将行更改为:
<td><input name="DFlag[]" type="checkbox" <?php if ($row[$i]['DFlag'] = 1) {echo "checked";}; if ($row[$i]['Display_Address_On_Roster_Flag'] = 0) {echo "unchecked";} ?> </td>
他们都回来检查了。
【问题讨论】: