php session应用实例 登录验证


Posted in PHP onMarch 16, 2009
<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 "您没有权限访问本页面"; 
} 
?>
PHP 相关文章推荐
ADODB结合SMARTY使用~超级强
Nov 25 PHP
常见的PHP五种设计模式小结
Mar 23 PHP
php生成随机颜色的方法
Nov 13 PHP
PHP中使用匿名函数操作数据库的例子
Nov 17 PHP
PHP自定session保存路径及删除、注销与写入的方法
Nov 18 PHP
php实现监控varnish缓存服务器的状态
Dec 30 PHP
PHP JSON格式的中文显示问题解决方法
Apr 09 PHP
jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
Oct 22 PHP
php+ajax实现带进度条的上传图片功能【附demo源码下载】
Sep 14 PHP
基于php实现的php代码加密解密类完整实例
Oct 12 PHP
PHPExcel导出2003和2007的excel文档功能示例
Jan 04 PHP
PHP-FPM 设置多pool及配置文件重写操作示例
Oct 02 PHP
php session处理的定制
Mar 16 #PHP
php session 检测和注销
Mar 16 #PHP
php session 预定义数组
Mar 16 #PHP
php 无限级缓存的类的扩展
Mar 16 #PHP
解决163/sohu/sina不能够收到PHP MAIL函数发出邮件的问题
Mar 13 #PHP
PHP 文件类型判断代码
Mar 13 #PHP
php discuz 主题表和回帖表的设计
Mar 13 #PHP
You might like
使用php判断网页是否gzip压缩
2013/06/25 PHP
护卫神php套件 php版本升级方法(php5.5.24)
2015/05/10 PHP
PHP二分查找算法示例【递归与非递归方法】
2016/09/29 PHP
PHP正则表达式函数preg_replace用法实例分析
2020/06/04 PHP
用Javascript 获取页面元素的位置的代码
2009/09/25 Javascript
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
jQuery实现切换页面过渡动画效果
2015/10/29 Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
2015/11/29 Javascript
JavaScript获取当前运行脚本文件所在目录的方法
2016/02/03 Javascript
JS基于MSClass和setInterval实现ajax定时采集信息并滚动显示的方法
2016/04/18 Javascript
js点击返回跳转到指定页面实现过程
2020/08/20 Javascript
JavaScript用JSONP跨域请求数据实例详解
2017/01/06 Javascript
JS实现经典的中国地区三级联动下拉菜单功能实例【测试可用】
2017/06/06 Javascript
浅谈vue.js中v-for循环渲染
2017/07/26 Javascript
layui实现动态和静态分页
2018/04/28 Javascript
基于vue v-for 多层循环嵌套获取行数的方法
2018/09/26 Javascript
利用jqgrid实现上移下移单元格功能
2018/11/07 Javascript
基于js实现抽红包并分配代码实例
2019/09/19 Javascript
Vue.js组件props数据验证实现详解
2019/10/19 Javascript
微信小程序后端(java)开发流程的详细步骤
2019/11/13 Javascript
Js代码中的span拼接问题解决
2019/11/22 Javascript
js中apply和call的理解与使用方法
2019/11/27 Javascript
详解Python函数可变参数定义及其参数传递方式
2017/08/02 Python
Python实现随机选择元素功能
2017/09/14 Python
如何在python字符串中输入纯粹的{}
2018/08/22 Python
Python matplotlib以日期为x轴作图代码实例
2019/11/22 Python
如何解决pycharm调试报错的问题
2020/08/06 Python
python中如何打包用户自定义模块
2020/09/23 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
详解CSS中iconfont的使用
2015/08/04 HTML / CSS
HTML5中的强制下载属性download使用实例解析
2016/05/12 HTML / CSS
英国经典球衣网站:Classic Football Shirts
2017/05/20 全球购物
临床医师专业个人自我评价范文
2013/11/07 职场文书
2013的个人自我评价
2013/12/26 职场文书
奥巴马开学演讲观后感
2015/06/12 职场文书
使用Python+OpenCV进行卡类型及16位卡号数字的OCR功能
2021/08/30 Python