2015-05-29 70 views
1

我在製作一個使用javascript和php的網站。在php中註銷限制

當從網站用戶註銷,然後如果他點擊瀏覽器的後退按鈕,然後它關係到該用戶登錄之前的狀態。

我怎麼能限制呢?

2.可以通過會話或其他方式完成嗎?

+3

這是不幸的3個問題在一個。請刪除其他人並專注於單個主題,展示您嘗試過的內容以及問題所在。 –

+0

爲註銷創建一個頁面並將其重定向到另一頁 – roullie

+1

慢下來並給出[如何操作](http://stackoverflow.com/help/how-to-ask)讀取。除了在一個問題中存在多個問題之外,他們都非常廣泛,您需要決定一個問題,然後詳細說明幷包含您自己嘗試的內容。 – Epodax

回答

0

使用sessions

的login.php:

... 
$_SESSION["foo"] = $foo; 
... 

Logout.php:

​​

login.php您將設置一個名爲fooSESSION變量(這樣用戶登錄) 。當他註銷時,您將destroy/unsetSESSION變量名爲foo,因此在每個登錄頁面中,您可能需要執行if語句檢查SESSION變量是否已設置(登錄)else(未登錄),那麼您可以重定向用戶到你想要的地方。

0

當用戶單擊後退按鈕時,內容將從瀏覽器緩存中加載,而不是從服務器加載。這就是它發生的原因。

從我的理解,如果上一頁處理來自同一頁面的一些輸入,瀏覽器會顯示網頁過期通知。 這是我在php的例子。

的login.html

<!doctype HTML> 
    <html> 
    <body> 
    <form action="action.php" method="post"> 
    username <input type="text" name="uname"/> 
    <input type="submit" value='login' /> 
    </form> 
    </body> 
    </html> 

action.php的

<?php 

if(isset($_POST["uname"])){ 
$user = $_POST["uname"]; 
session_start(); 
echo "welcome ". $user; 
} 
if(isset($_POST["logout"])){ 
session_unset(); 
} 

?> 
<html> 
<body> 
<form action="action.php" method="post" > 
<input type="hidden" name="logout" /> 
<input type="submit" value="logout" /> 
</form> 
</body> 
</html> 

如果用戶登錄電子後出瀏覽器點擊後退按鈕顯示網頁過期消息。

0

我希望你有很好的愉快。

請檢查此代碼可能對您有幫助。

文件名:_32_session.php

<?php 

session_start(); 

?> 

<html> 
    <body> 
    <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 
     <label>Please enter your Name</label> 
     <input type="text" name="name"> 
     <input type="submit" name="submit" value="Login"> 
     <input type="submit" name="Unset" value="Logout"> 
    </form> 
    </body> 

    <?php 
     if(isset($_POST['Unset'])) 
     { 
      session_destroy(); 
      header('Location:_32_session.php'); 

     } 

     elseif(isset($_POST['submit'])) 
     { 
      $name = $_POST['name']; 
      $_SESSION['name']=$name; 

     } 

     if(isset($_SESSION['name'])) 
     { 
      echo "<br>"; 
      echo "Wellcome ".$_SESSION['name']; 
     } 
     else 
     { 
      echo "<br>"; 
      echo "Wellcome Guest"; 
     } 

    ?> 

</html> 

使用此代碼和檢查。

問候,