除非用户将某些数据输入textarea控件,否则我的脚本不应该提交HTML表单。但是,无论如何都会提交表单,并且不会显示用户的任何消息。 谁能看到我做错了什么?
这是我的HTML:
<textarea name="description" id="description" rows = "4" cols = "25">
<?php echo $description?>
</textarea>
至于PHP,这两个:
if ($_POST['description'] == "") {
$errors .= 'Please enter a description of your invention.<br/><br/>';
}
或者这个:
if (empty($_POST['description'])) {
$errors .= 'Please enter a description of your invention.<br/><br/>';
}
的工作。
答案 0 :(得分:9)
那是因为文字区域不是空的!请注意,您在&lt;?php echo $ description?&gt;之前添加了一个标签,这意味着文本区域至少会包含一个标签。
将验证码更改为以下内容:
if (trim($_POST['description']) == "") {
答案 1 :(得分:0)
在表格中填写:
<form onsubmit = "return checkSubmit()">
然后在你的Javascript中:
function checkSubmit(){
if (form good)
return true;
else
return false;
}
答案 2 :(得分:0)
<textarea>
标记之间有一些空格。您是否尝试输出$_POST['description']
以查看是否已将其回发?额外的新线可能会弄乱它。您可以尝试添加最小长度。