簡體   English   中英

php消息在頁面之間傳遞查詢字符串

[英]php message passing with query string between pages

在PHP中,注銷后在header中發送來自logout.php的查詢字符串,例如header("location:login.php?call=logout"); 在登錄頁面上,我得到了調用查詢字符串變量,以在登錄頁面上顯示you are logged out等的消息。

但是,如果我直接轉到login.php?call=logout鏈接,則同樣會出現您正在注銷的消息。 但目前沒有注銷過程。

我如何擺脫這個問題。

如果通過了直接URL login.php?call=logout則不應顯示任何注銷消息。

logout.php

<?php

header("location:login.php?call=logout");

?>

Login.php

<?php

if($_GET['call']=='logout'){ echo "you are logged out.";}
?>

將您的消息發送給會話。 例:

$_SESSION['message'] = 'Some message';
header("location: login.php");
exit;

// login.php
if (isset($_SESSION['message'])) {
    echo $_SESSION['message'];
    unset($_SESSION['message']);
}
  1. 實際上是一個值得解決的問題嗎? 這是顯示消息的最簡單的機制,除非您從其他任何地方鏈接到login.php?call=logout ,否則任何人都不應該進入這種情況。
  2. 要“驗證”該消息實際上應該顯示,您需要保留服務器端的狀態。 通常,您將使用一個會話(即使沒有登錄用戶也是如此)來存儲信息,該信息應在該頁面上顯示一條消息。

暫無
暫無

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

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