php session应用实例 登录验证

2018-09-24 21:37

阅读:456

  复制代码 代码如下:
<html>
<head>
<title>Login</title>
<meta http-equiv=Content-Type content=text/html; charset=gb2312>
</head>

<body>
<form name=form1 method=post action=login.php>
<table width=300 border=0 align=center cellpadding=2 cellspacing=2>
<tr>
<td width=150><div align=right>用户名:</div></td>
<td width=150><input type=text name=username></td>
</tr>
<tr>
<td><div align=right>密码:</div></td>
<td><input type=password name=passcode></td>
</tr>
<tr>
<td><div align=right>Cookie保存时间:</div></td>
<td><select name=cookie id=cookie>
<option value=0 selected>浏览器进程</option>
<option value=1>保存1天</option>
<option value=2>保存30天</option>
<option value=3>保存365天</option>
</select></td>
</tr>
</table>
<p align=center>
<input type=submit name=Submit value=Submit>
<input type=reset name=Reset value=Reset>
</p>
</form>
</body>
</html>

复制代码 代码如下:
<?php
@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 <a href=main.php href=main.php>欢迎登录,点击此处进入欢迎界面</a>;
}
else //如果权限信息无效输出错误信息
{
echo 用户权限信息不正确;
}
}
else //如果用户名和密码不正确,则输出错误
{
echo 用户名或密码错误;
}
?>

复制代码 代码如下:
<?php
unset($_SESSION[username]);
unset($_SESSION[passcode]);
unset($_SESSION[userflag]);
echo 注销成功;
?>

复制代码 代码如下:
<?php
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 <a href=logout.php href=logout.php>注销</a>;
}
else
{
echo 您没有权限访问本页面;
}
?>


评论


亲,登录后才可以留言!