这是一个代码
<?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>
然后它就空了。目前,那里有一些空格和换行符。