我正在创建一个包含两个复选框yes和no的表单。我在名为Completed的mysql字段中添加了yes或no。
我遇到的问题是如果字段有“是”或“否”,则勾选框会显示勾号。
因此,取决于字段中的内容已完成“是”或“否”,勾选框应勾选或不勾选。
我的代码是这样的:
<input type="checkbox" name="Completed" Completed="Yes" value="<?php echo $stuff["Completed"]; ?>" <?php echo $stuff["Completed"] ? 'checked=" checked"' : ''; ?> > Yes</td>
<input type="checkbox" name="Completed" Completed="No" value="<?php echo $stuff["Completed"]; ?>" <?php echo $stuff["Completed"] ? 'checked=" checked"' : ''; ?> > No</td>
答案 0 :(得分:2)
<?php echo $stuff["Completed"] ? 'checked=" checked"' : ''; ?>
将始终返回true,因为您检查“是”和“否”。这个值适用于php。您必须在db中设置值0或1或检查执行以下操作:
<?php echo $stuff["Completed"] == 'Yes' ? 'checked=" checked"' : ''; ?>
...
<?php echo $stuff["Completed"] == 'No' ? 'checked=" checked"' : ''; ?>
答案 1 :(得分:2)
复选框不会让我成为此类信息的适当控件。您是否考虑使用单选按钮?在任何情况下,您的问题的答案取决于您如何将数据存储在数据库中。如果是简单的“是”或“否”,请尝试以下内容:
<input type="radio" name="Completed" value="Yes" <?php echo $stuff["Completed"] == 'Yes' ? 'checked="checked"' : ''; ?> />