我創建了一個非常簡單的登錄頁面,我在提交表單後驗證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'功能瓦爾。 –