我在製作一個使用javascript和php的網站。在php中註銷限制
當從網站用戶註銷,然後如果他點擊瀏覽器的後退按鈕,然後它關係到該用戶登錄之前的狀態。
我怎麼能限制呢?
2.可以通過會話或其他方式完成嗎?
我在製作一個使用javascript和php的網站。在php中註銷限制
當從網站用戶註銷,然後如果他點擊瀏覽器的後退按鈕,然後它關係到該用戶登錄之前的狀態。
我怎麼能限制呢?
2.可以通過會話或其他方式完成嗎?
使用sessions
的login.php:
...
$_SESSION["foo"] = $foo;
...
Logout.php:
在login.php
您將設置一個名爲foo
的SESSION
變量(這樣用戶登錄) 。當他註銷時,您將destroy/unset
的SESSION
變量名爲foo
,因此在每個登錄頁面中,您可能需要執行if
語句檢查SESSION
變量是否已設置(登錄)else(未登錄),那麼您可以重定向用戶到你想要的地方。
當用戶單擊後退按鈕時,內容將從瀏覽器緩存中加載,而不是從服務器加載。這就是它發生的原因。
從我的理解,如果上一頁處理來自同一頁面的一些輸入,瀏覽器會顯示網頁過期通知。 這是我在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>
如果用戶登錄電子後出瀏覽器點擊後退按鈕顯示網頁過期消息。
我希望你有很好的愉快。
請檢查此代碼可能對您有幫助。
文件名:_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>
使用此代碼和檢查。
問候,
這是不幸的3個問題在一個。請刪除其他人並專注於單個主題,展示您嘗試過的內容以及問題所在。 –
爲註銷創建一個頁面並將其重定向到另一頁 – roullie
慢下來並給出[如何操作](http://stackoverflow.com/help/how-to-ask)讀取。除了在一個問題中存在多個問題之外,他們都非常廣泛,您需要決定一個問題,然後詳細說明幷包含您自己嘗試的內容。 – Epodax