我是PHP新手,这是我的代码,用于检查表单中的所有输入:
<html>
<body>
<?php
$name = $email = $password = $confirmpassword = $number = "";
$error= false;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
echo"Name is required<br>";
$error=true;
} else {
$name = test_input($_POST["name"]);
}
if (empty($_POST["password"])) {
echo "Password is required<br>";
$error=true;
} else {
$password = test_input($_POST["password"]);
}
if (empty($_POST["email"])) {
echo "Email is required<br>";
$error=true;
} else {
$email = test_input($_POST["email"]);
}
if (empty($_POST["confirmpassword"])) {
echo "Confirm Password is required<br>";
$error=true;
} else {
$confirmpassword = test_input($_POST["confirmpassword"]);
}
if (empty($_POST["number"])) {
echo "Number is required<br>";
$error=true;
} else {
$number = test_input($_POST["number"]);
}
if(strcmp($password,$confirmpassword)!=0)
{
echo "Password do not match<br>";
$error=true;
}
if(!$error)
{
}
}
?>
</body>
</html>
如果我在第一个文本框中输入输入,即名称,则显示空白页面,但不显示其他错误。这是错误,因为尚未输入其他输入。换句话说,它显示每个输入的错误,直到并且除非检测到真正的语句。在任何语句为真之后,该语句之后的代码似乎不执行。基本上,如果遇到任何真正的语句,代码就会中断并结束。
我该如何解决这个问题?
答案 0 :(得分:2)
函数test_input
不存在。你必须先写它。现在您正在调用一个不存在的函数,这会导致致命错误,从而结束您的脚本。
有趣的是,还有其他用户also thought test_input
was a built-in function。它不是。