【发布时间】:2012-02-01 04:06:23
【问题描述】:
我正在编写一个简单的联系表格,下面的代码给我带来了麻烦:
if(!strlen($_POST['lastname']) > 0){
echo '<p class="message error">Please enter the parent\'s last name.</p>';
}
if(!strlen($_POST['comments']) > 5){
echo '<p class="message error">Please tell us a little more in the comments field.</p>';
}
相关表单元素:
<textarea name="comments" cols="60" rows="5"><?=(isset($_POST['comments']) ? $_POST['comments'] : '')?></textarea>
当我将两个字段都留空时,只会显示第一条错误消息(以及未显示的其他错误消息),而 cmets 字段的错误消息则不会。
如果我提交少于 5 个字符的 cmets 字段,错误检查甚至会返回错误,但错误消息不会打印。此外,我什至在我提交空白的 cmets 字段的 strlen() 时也回显它并打印出 0。
谁能看出这是什么问题?
【问题讨论】:
-
为什么不使用 if(strlen($_POST['cmets'])
-
@Kieran Andrews - 因为我今晚要加班 2 小时,所以这就是为什么,呵呵......但是谢谢你。请转发作为答案。
-
经典案例不喝酒写代码,或者不累不写代码。 :o)