我現在在我的智慧結束。這裏是我想知道的,我如何檢查用戶在我的登錄頁面(僅由用戶名和登錄名)提供的信息與我在數據庫中的信息?我已經可以做到這一點,但現在我的問題是我已經確定的兩件事情。 1)如果所提供的信息與存儲在我的數據庫中的信息相比較時是真的,那麼我想引導用戶到不同的頁面(我假設我的HTML中的ACTION方法會照顧到這一點)。但如果輸入是錯誤的,那麼我需要迭代登錄頁面,以便他們可以重新輸入他們的詳細信息。上述php登錄驗證
if ($p===$p1)
{
header("Location:success.php");
}
else
{
header("Location:fail.php");
}
是我的代碼以$ p是密碼字段的形式和$ P1是從數據庫中值的值。此代碼現在發生的情況是,即使密碼甚至用戶名不匹配,用戶仍然可以訪問成員頁面。我已經能夠確定問題在於「標題」方法。但即使我交換了兩個用戶仍然導向到success.php。如果你不明白我的問題的癥結所在,我懇請你不要忽視它只是問我,我會提供更多的信息。抱歉,但我不能似乎能夠得到
什麼是輸出,當你''echo' $ p'和'$ p1'?他們真的是文字嗎?他們是平等的嗎?另外:我在你的問題中讀到,'$ p1'是數據庫開始的密碼,與用戶輸入的密碼相比 - 這是不好的!未加密存儲的密碼(在直接與用戶輸入進行比較時必須存在)是一個安全問題。爲什麼不重構它,以便根據用戶標識和密碼從數據庫獲取用戶記錄。如果您獲得記錄,則登錄成功。 – 2012-04-03 13:56:23
如何處理一些示例代碼? – 2012-04-03 13:56:28
是的,我做得到的記錄,我第一次使用SQL從數據庫中獲取數據之前,我在我正在比較變量結束這樣比較,我的問題是與「頭」和三聯「=」 – Riddle 2012-04-03 14:31:24