复选框 - 似乎无法检查它们

时间:2012-11-22 00:02:03

标签: php checkbox

我已经看到了一千种不同的方法来做复选框,但是我的眼睛很累,试图弄清楚为什么我只是在值为真时无法回显变量(这是因为我从db检索它们并将它们打印出来出):

<input type="checkbox" name="headlines" value="true" <?php if($headlines=="true"){ echo "checked=checked";} ?> /> Headlines<br />

已从数据库中提取标题和基于该行的变量集,我已将其打印并且为真,因此必须在上面的代码中。

我也尝试过:

<input type="checkbox" name="headlines" <?php if($row['headlines'] === TRUE){ echo "checked=checked";} ?>/>Headlines<br />

我哪里错了?

谢谢!

2 个答案:

答案 0 :(得分:2)

你需要在引号

中使用第二个“已选中”
<input checked="checked" />

你可以使用单人或双人,但你需要在你的回声中应对这一点。

<input type="checkbox" name="headlines" value="true" <?php if($headlines=="true"){ echo 'checked="checked"'; } ?> /> Headlines<br />

(请注意,这假设您正在编写XHTML。如果您正在编写HTML,那么您只需要'检查'而不是完整的'checked ='选中“'。您也错过了{ {1}}等。)

答案 1 :(得分:1)

if($headlines=="true")

“true”是一个字符串,你可能想检查它是否属实?

if($headlines==true)

以下适用于我的Chrome:

<?php $headlines = true; ?>

<input type="checkbox" name="headlines" value="true" <?php if($headlines==true){ echo "checked=checked";} ?> /> Headlines<br />

正如罗比所说,你还应该用引号括起选中的值。