0x00:实验目的
- 使用php搭建基于Server端的Session会话管理环境
- 完成登录页面、检查登录以及清除当期会话三个功能
0x01:实验环境
- 安装Apache、PHP、MySQL(或者phpStudy集成环境)
- 测试PHP环境释放搭建成功
找到PHP目录…\www 新建文件phpinfo,显示PHP版本信息
<?php
phpinfo();
?>
0x02:实验步骤
1、编写前端页面并测试 http://127.0.0.1/login.html
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8">
</head>
<body>
<form action="login.php" method="POST">
username:
<input type="text" name="username"><br>
password:
<input type="password" name="password"><br>
<input type="submit" name="submit" value="登录">
</form>
</body>
</html>
2、编写登录页面,包含session函数(仅检查用户名密码是否为admin,不连接数据库),并登录检查 http://127.0.0.1/login.php
<?php
header("Content-Type:text/html;charset=utf-8");
session_start();
$user = $_POST['username'];
$pwd = $_POST['password'];
if($user === 'admin' && $pwd ==='admin'){
echo '登录成功';
$_SESSION['admin'] = 1;
var_dump($_SESSION);
}
else{
echo '登录失败';
}
?>
3、编写维持会话功能,检查是否为管理员 http://127.0.0.1/check.php
<?php
header("Content-Type:text/html;charset=utf-8");
session_start();
var_dump($_SESSION);
if($_SESSION['admin'] ==1){
echo '管理员登录';
}else{
echo "普通登录";
}
?>
4、编写消除会话功能(unset()消除当前会话,session_destroy完全消除所有会话)http://127.0.0.1/unset.php
<?php
session_start();
unset($_SESSION['user']);
session_destroy();
?>
5、再次访问check.php 检查会话已经消除