簡體   English   中英

如何使用PHP重定向隱藏URL參數

[英]How to Hide URL parameters with php redirect

我讀了這篇文章: http : //smallbusiness.chron.com/hiding-url-parameters-php-redirect-33163.html解釋了如何進行操作,但我不理解您如何使用標頭中的標題進行重定向那里。

為了存儲在會話中,這是我使用的代碼

session_start();  
function input_val($key, $remember = true) {  //use input_val('nameofinputfield')as value to be able to store in session
    $value='';
    if(isset($_REQUEST[$key])) {
       $value = $_REQUEST[$key];
       //Store value in session if remember = true 
       if($remember) {
         $_SESSION[$key] = $value;
       }
       return $value;
    } else {
      //Return session data
      return isset($_SESSION[$key]) ? $_SESSION[$key] : $value;
    }
}

我將盡我所能簡單地解釋它,並不是那么困難。 當用戶與php會話時,他在瀏覽器中存儲了一些文本,該文本就像一個用戶ID,一直持續到他關閉瀏覽器。 php腳本可以通過知道其ID來告訴服務器並從服務器中提取信息,例如參數。 但是,這不是跨服務器功能,並且不是持久性功能,與cookie不同,會話的過期時間通常很短,並且在用戶關閉瀏覽器時會過期。

另外,建議不要使用它來存儲諸如頁碼之類的Get信息,因為它不能被重新引用。

假設您想將用戶名和電子郵件參數從script1.php傳遞給script2.php。 如果使用的是POST方法,則不會在URL中顯示參數,並且可以通過$_POST全局變量訪問傳遞的變量。 但是,如果出於任何原因要使用GET方法,或者要將數據存儲在$_SESSION ,則可以執行此操作。

您可以嘗試在script2.php中使用它:

session_start();
if (count($_GET)) {
    foreach ($_GET as $key => $value) {
        $_SESSION[$key] = $value;
    }
    header("Location: " . $_SERVER["PHP_SELF"]);
}
//At here, you can access all of your parameters from $_SESSOION variable
var_dump($_SESSION);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM