如何在没有logout.php的情况下注销

时间:2012-11-13 10:41:39

标签: php logout login-script

下面的php代码是login_successful.php,它是在用户登录后获得的,在此页面中我想显示他的“用户名”和注销链接

<html>
<head>
<?php
session_start();
if(!session_is_registered(myusername)){
header("location:home.html");
}

?>
</head>
<body>
Welcome $myusername //here i want to display logged in user's name
Login Successful

</body>
</html>

如何在不使用其他logout.php文件的情况下将注销链接放在此页面中。

3 个答案:

答案 0 :(得分:3)

为什么要使用其他页面进行注销?这样做

<?php
if(isset($_POST['logout'])) {
  //Unset cookies and other things you want to
  session_destroy();
  header('Location: login.php'); //Dont forget to redirect
  exit;
}
?>
<form method="POST">
  <input type="submit" name="logout" />
</form>

答案 1 :(得分:0)

你必须检查会话是否有他的用户名然后显示,如:

session_start();
if(isset($_SESSION['username'])){
   echo "Hello, " . $_SESSION['username']);
   echo "<a href="logout.php">Logout</a>"
}

答案 2 :(得分:0)

你总是可以打电话给session_destroy()来猜测你的会话!从手册:

  

session_destroy()会销毁与当前会话关联的所有数据。它不会取消设置与会话关联的任何全局变量,也不会取消设置会话cookie。

比使用session_destroy()更重要的是确保您通过设置一小时后的时间来重置Cookie(如果使用的话):time() - 3600,如:

setcookie ("YourCookieName", "", time() - 3600);