php中session登录验证的例子
时间:2021-07-01 10:21:17
帮助过:4人阅读
-
-
- Login
-
-
-
-
二、登录检测页
- @mysql_connect("localhost", "root","1981427") //选择数据库之前需要先连接数据库服务器
- or die("数据库服务器连接失败");
- @mysql_select_db("test") //选择数据库mydb
- or die("数据库不存在或不可用");
- //获取用户输入
- $username = $_POST['username'];
- $passcode = $_POST['passcode'];
- //执行SQL语句获得Session的值
- $query = @mysql_query("select username, userflag from users "
- ."where username = '$username' and passcode = '$passcode'")
- or die("SQL语句执行失败");
- //判断用户是否存在,密码是否正确
- if($row = mysql_fetch_array($query))
- {
- session_start(); //标志Session的开始
- //判断用户的权限信息是否有效,如果为1或0则说明有效
- if($row['userflag'] == 1 or $row['userflag'] == 0)
- {
- $_SESSION['username'] = $row['username'];
- $_SESSION['userflag'] = $row['userflag'];
- echo "欢迎登录,点击此处进入欢迎界面";
- }
- else //如果权限信息无效输出错误信息
- {
- echo "用户权限信息不正确";
- }
- }
- else //如果用户名和密码不正确,则输出错误
- {
- echo "用户名或密码错误";
- }
- ?>
三、注销登录页
- unset($_SESSION['username']);
- unset($_SESSION['passcode']);
- unset($_SESSION['userflag']);
- echo "注销成功";
- ?>
四、成功登录提示页
- session_start();
- if(isset($_SESSION['username']))
- {
- @mysql_connect("localhost", "root","1981427") //选择数据库之前需要先连接数据库服务器
- or die("数据库服务器连接失败");
- @mysql_select_db("test") //选择数据库mydb
- or die("数据库不存在或不可用");
- //获取Session
- $username = $_SESSION['username'];
- //执行SQL语句获得userflag的值
- $query = @mysql_query("select userflag from users "
- ."where username = '$username'")
- or die("SQL语句执行失败");
- $row = mysql_fetch_array($query);
- //判断当前数据库中的权限信息与Session中的信息比较,如果不同则更新Session的信息
- if($row['userflag'] != $_SESSION['userflag'])
- {
- $_SESSION['userflag'] = $row['userflag'];
- }
- //根据Session的值输出不同的欢迎信息
- if($_SESSION['userflag'] == 1)
- echo "欢迎管理员".$_SESSION['username']."登录系统";
- if($_SESSION['userflag'] == 0)
- echo "欢迎用户".$_SESSION['username']."登录系统";
- echo "注销";
- }
- else
- {
- echo "您没有权限访问本页面";
- }
- ?>
|