Textarea验证

时间:2010-10-25 16:20:17

标签: php html

除非用户将某些数据输入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/>';
        }   

的工作。

3 个答案:

答案 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']以查看是否已将其回发?额外的新线可能会弄乱它。您可以尝试添加最小长度。