未获取文本区域';表单post上的值


Not getting textarea'a value on form post

这是一个代码

<?php
if (isset($_POST['flag'])) {
    echo "in";
$val=htmlspecialchars($_POST['area']);
echo $val;
if($val == "")
{
    $abstractErrorMsg="Please enter the abstract of your article";
    echo $abstractErrorMsg;
} 
}
?>
<html>
    <form method="post" action="">
        <input type="hidden" name="flag" value="hidden">
        Abstract*
        <textarea name="area" style="width: 300px; height: 100px;">
        </textarea>
        <input type="submit" name="btn">
    </form>
</html>

当我在没有填写文本区域的情况下提交表单时,它也不会显示错误消息。

有人能想到是什么原因导致了这种奇怪的行为吗?

要检查文本区域是否为空,请使用以下命令:

if (!strlen(trim($_POST['textarea'])))

文本区域的默认值由许多空格和新行组成。这并不等同于""

如果您将文本区域更改为:

<textarea name="area" style="width: 300px; height: 100px;"></textarea>

然后它就空了。目前,那里有一些空格和换行符。