亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php:如何重定向到同一頁面并顯示錯誤消息

php:如何重定向到同一頁面并顯示錯誤消息

PHP
開滿天機 2023-06-24 15:33:46
當輸入電子郵件不包含@符號時,我需要重定向到同一頁面。其余的代碼可以正常工作,但是每當我發送一封沒有@的電子郵件時,它就會將我重定向到一個空白頁面。(問題的詳細信息如下:登錄屏幕需要對其輸入數據進行一些錯誤檢查。如果名稱或密碼字段為空,則應顯示以下形式的消息:需要電子郵件和密碼請注意,我們使用“電子郵件”而不是“用戶名”來登錄此作業。如果密碼非空且不正確,您應該輸入以下形式的消息:密碼錯誤對于此分配,您必須添加一個新的驗證以確保登錄名包含 at 符號 (@),并在這種情況下發出錯誤:電子郵件必須帶有 at 符號 (@)如果正確散列的傳入密碼與存儲的 Stored_Hash 值匹配,則用戶的瀏覽器將重定向到 autos.php 頁面,并將用戶名作為 GET 參數,使用:header("位置:autos.php?name=".urlencode($_POST['who']));當用戶由于密碼錯誤而登錄失敗時,您還必須使用 error_log() 函數發出以下消息,顯示密碼加鹽的計算哈希值:error_log("登錄失敗".$_POST['who']."$check");當登錄成功(即哈希匹配)時,發出以下日志消息:error_log("登錄成功".$_POST['who']); )<?php if ( isset($_POST['cancel'] ) ) {    header("Location: index.php");    return;}$salt = 'XyZzy12*_';$stored_hash = '1a52e17fa899cf40fb04cfc42e6352f1';  $failure = false;  // Check to see if we have some POST data, if we do process itif ( isset($_POST['email']) && isset($_POST['pass']) ) {    if ( strlen($_POST['email']) < 1 || strlen($_POST['pass']) < 1 ) {        $failure = "Email and password are required";    } else {        if(strpos($_POST['email'], '@') !== false)        {            $check = hash('md5', $salt.$_POST['pass']);            if ( $check == $stored_hash ) {                // Redirect the browser to autos.php                header("Location: autos.php?name=".urlencode($_POST['email']));                error_log("Login success ".$_POST['email']);                return;            } else {                $failure = "Incorrect password";                error_log("Login fail ".$_POST['email']." $check");            }                     }        else        {            $failure = "Email must have an at-sign @";            return;        }    }}
查看完整描述

1 回答

?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

return從該行后面的 else 塊中刪除$failure = "Email must have an at-sign @"

我認為,在不了解如何處理請求的情況下,根據示例,當驗證失敗時,進程不得返回。它僅在成功時返回,因為在這種情況下,您將有一個新的標題,因此當頁面加載時,它會將您帶到某個地方,在失敗時,您只需要更改變量即可$failure。

http://img1.sycdn.imooc.com//64969c7e0001035902570202.jpg

查看完整回答
反對 回復 2023-06-24
  • 1 回答
  • 0 關注
  • 125 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號