我创建了一个非常简单的登录页面,我在提交表单后验证PHP上的用户名和密码。PHP - 如果条件语句被跳过,除非指定了else
我在验证第一步是检查用户名和密码不为空,如果空我送用户返回到登录页面:
$e = $_POST['email'];
$p = $_POST['password'];
if($e == '' || $p == '' || is_null($e) || is_null($p)){
header('Location: login.php?e=missing');
}
事实证明,在if
语句检查如果用户名和密码是空的只有工作,如果我添加一个else
声明:
$e = $_POST['email'];
$p = $_POST['password'];
if($e == '' || $p == '' || is_null($e) || is_null($p)){
header('Location: login.php?e=missing');
}else{
//more validation
}
说实话,我的代码工作,我加入了else
和问题解决了,但为什么??? 谢谢。
我会考虑加入少许验证 – Chris
值得指出的,还有,你的第二个例子多了两个检查:对'$ e'和'$ p'的'is_null'功能瓦尔。 –