这是一个代码
<?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>
当我在没有填写textarea的情况下提交表单时,它也没有显示错误消息。
任何人都可以找出造成这种奇怪行为的原因吗?
答案 0 :(得分:3)
要检查textarea是否为空,请使用此:
if (!strlen(trim($_POST['textarea'])))
答案 1 :(得分:2)
textarea的默认值由许多空格和新行组成。这不等同于""
。
答案 2 :(得分:0)
如果您将textarea更改为:
<textarea name="area" style="width: 300px; height: 100px;"></textarea>
然后它会是空的。目前,那里有一些空格和换行符。