设置$ _SESSION的登录脚本的一部分:
session_start();
$_SESSION['username'] = '$myuser';
header("location: loggedinonly.php");
退出页面:
<!DOCTYPE html>
<?php
session_start;
unset($_SESSION['username']);
header('location: /phptest');
?>
登录时应该只能看到的页面:
<!DOCTYPE html>
<?php
session_start();
if (!isset($_SESSION['username'])) {
print("NO ACCESS");
} else {
print("WELCOME");
}
?>
<html>
<head>
<title>LOGIN PAGE</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>
<body>
You must be logged in to read this!<br>
</body>
</html>
当我打开一个新会话时,我没有访问权限。但是,如果我登录,然后转到页面,我有访问权限。所有这些都是有意的。但是,当我通过脚本注销时,我仍然可以访问。
我已经尝试了很多,抱歉,如果之前有人问过,我发现搜索没有任何用处。
答案 0 :(得分:0)
您在单个会话变量上使用unset,因此您仍然可以保留用户登录的内容。尝试使用session_destroy()
,它将删除与会话相关的所有数据。
答案 1 :(得分:0)
退出页面:
<?php
if(isset($_SESSION['username'])){
session_start();
session_destroy();
session_commit();
header('Location: phptest.php');
}
?>