如何检查此表单输入是否已发送到此PHP页面以及它是否超过3个字符?如果少于 3 个字符,我想打印一个错误。
形式
<form action="index.php" method="post" id="formFlow">
<label for="name" >Name:</label>
<input type="text" name="name" id="name" class="border"/>
</form>
.PHP
<?php
$var = $_POST["name"];
if (!empty($var) || strlen($var >= 3)) {
echo "Yes, name is sent";
}else{
echo "Error, name short";
}
?>
首先,
您不能在您的条件下使用 OR 运算符,因为它始终为真,字符串长度小于 3 或大于
。您必须使用 && 运算符。
其次,您在strlen()
它必须需要一个字符串而不是条件时遇到问题。
示例:
if (!empty($var) && strlen($var) >= 3) {
我认为这将解决您的问题
<?php
$var = isset($_POST["name"]) ? $_POST["name"] : "";
if (!empty($var) && strlen($var) >= 3) {
echo "Yes, name is sent";
} else {
echo "Error, name short";
}
?>