2011-10-02 55 views
0

我需要的复选框被检查只有当$c(POST)为1,或者如果$d['is']为1复选框行动

这里是我的代码:

if (($d['is'] == 1) OR $c == 1) 

$data = 'checked="checked"'; 

的问题是,如果复选框被选中,并且我取消勾选这个并且点击提交按钮它仍然被检查,因为$d['is']仍然是1.所以最后:只有当$c(POST)是1或者如果$d['is']是1但是如果$c == 0(POST)(未勾选的复选框)复选框不应被检查。

很难说我的问题,所以如果你什么都不懂,请发表评论。

+0

只是可以肯定的,我建议你使用===而不是==因为类型比较。 –

+0

@AurelioDeRosa 你是什么意思? – Lucas

+1

如果您使用==,您在此情况下获得TRUE: 如果$ c的值为1,则$ c == 1 ----> TRUE 如果$ c的值为TRUE,则$ c == 1 --- - > TRUE 更多细节在这里:http://php.net/manual/en/language.operators.comparison.php –

回答

1

所以你说的是你想检查它是否$c==1$d['is'] == 1,但不是如果$c==0?如果是这样的话,为什么$d['is']会进来呢?只要它检查,如果$c==1,你就完成了...

+0

然后,默认情况下,复选框将被取消选中:/。 – Lucas

+0

我不明白你想要做什么。 '$ c'默认是什么? –

+0

'$ c',默认为0(未设置),如果我选中该框,'$ c'为1. – Lucas