php cookie 登录验证示例代码


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']; 
$cookie = $_POST['cookie']; 
//执行SQL语句 
$query = @mysql_query("select username, userflag from users " 
."where username = '$username' and passcode = '$passcode'") 
or die("SQL语句执行失败"); 
//判断用户是否存在,密码是否正确 
if($row = mysql_fetch_array($query)) 
{ 
if($row['userflag'] == 1 or $row['userflag'] == 0) //判断用户权限信息是否有效 
{ 
switch($cookie) //根据用户的选择设置cookie保存时间 
{ 
case 0: //保存Cookie为浏览器进程 
setcookie("username", $row['username']); 
break; 
case 1: //保存1天 
setcookie("username", $row['username'], time()+24*60*60); 
break; 
case 2: //保存30天 
setcookie("username", $row['username'], time()+30*24*60*60); 
break; 
case 3: //保存365天 
setcookie("username", $row['username'], time()+365*24*60*60); 
break; 
} 
header("location: main.php"); //自动跳转到main.php 
} 
else 
{ 
echo "用户权限信息不正确"; 
} 
} 
else 
{ 
echo "用户名或密码错误"; 
} 
?>

<?php 
session_start(); 
if(isset($_COOKIE['username'])) 
{ 
@mysql_connect("localhost", "root","1981427") //选择数据库之前需要先连接数据库服务器 
or die("数据库服务器连接失败"); 
@mysql_select_db("test") //选择数据库mydb 
or die("数据库不存在或不可用"); 
//获取Session 
$username = $_COOKIE['username']; 
//执行SQL语句获得userflag的值 
$query = @mysql_query("select userflag from users " 
."where username = '$username'") 
or die("SQL语句执行失败"); 
$row = mysql_fetch_array($query); 
//获得用户权限信息 
$flag = $row['userflag']; 
//根据userflag的值输出不同的欢迎信息 
if($flag == 1) 
echo "欢迎管理员".$_SESSION['username']."登录系统"; 
if($flag == 0) 
echo "欢迎用户".$_SESSION['username']."登录系统"; 
echo "<a href="logout.php" href="logout.php">注销</a>"; 
} 
else 
{ 
echo "您没有权限访问本页面"; 
} 
?>

<?php 
setcookie("username"); 
echo "注销成功"; 
?>
PHP 相关文章推荐
php Static关键字实用方法
Jun 04 PHP
PHP操作mysql函数详解,mysql和php交互函数
May 19 PHP
php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值
Oct 31 PHP
PHP连接操作access数据库实例
Mar 30 PHP
php生成图片验证码
Jun 09 PHP
Discuz!X中SESSION机制实例详解
Sep 23 PHP
PHP实现的限制IP投票程序IP来源分析
May 04 PHP
PHP开发制作一个简单的活动日程表Calendar
Jun 20 PHP
Yii安装与使用Excel扩展的方法
Jul 13 PHP
Laravel中任务调度console使用方法小结
May 07 PHP
利用php的ob缓存机制实现页面静态化方法
Jul 09 PHP
PHP开发API接口签名生成及验证操作示例
May 27 PHP
php 删除cookie和浏览器重定向
Mar 16 #PHP
php cookis创建实现代码
Mar 16 #PHP
php session应用实例 登录验证
Mar 16 #PHP
php session处理的定制
Mar 16 #PHP
php session 检测和注销
Mar 16 #PHP
php session 预定义数组
Mar 16 #PHP
php 无限级缓存的类的扩展
Mar 16 #PHP
You might like
php 字符串替换的方法
2012/01/10 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
2007/02/22 Javascript
firefo xml 读写实现js代码
2009/06/11 Javascript
JavaScript 学习笔记(十一)
2010/01/19 Javascript
JQuery实现的在新窗口打开链接的方法小结
2010/04/22 Javascript
为JavaScript类型增加方法的实现代码(增加功能)
2011/12/29 Javascript
js和as的稳定传值问题解决
2013/07/14 Javascript
js中获取时间new Date()的全面介绍
2016/06/20 Javascript
轻松掌握JavaScript单例模式
2016/08/25 Javascript
NW.js 简介与使用方法
2018/02/01 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
JavaScript事件对象深入详解
2018/12/30 Javascript
Node.js net模块功能及事件监听用法分析
2019/01/05 Javascript
webpack proxy 使用(代理的使用)
2020/01/10 Javascript
微信小程序保存图片到相册权限设置
2020/04/09 Javascript
利用 JavaScript 实现并发控制的示例代码
2020/12/31 Javascript
python学习手册中的python多态示例代码
2014/01/21 Python
Python动刷新抢12306火车票的代码(附源码)
2018/01/24 Python
django2笔记之路由path语法的实现
2019/07/17 Python
python实现的按要求生成手机号功能示例
2019/10/08 Python
python分布式计算dispy的使用详解
2019/12/22 Python
Python post请求实现代码实例
2020/02/28 Python
ubuntu 安装pyqt5和卸载pyQt5的方法
2020/03/24 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
CSS3教程(7):CSS3嵌入字体
2009/04/02 HTML / CSS
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
地球鞋加拿大官网:Earth Shoes Canada
2020/11/17 全球购物
一道SQL存储过程面试题
2016/10/07 面试题
为什么说Ruby是一种真正的面向对象程序设计语言
2012/10/30 面试题
红领巾心向党广播稿
2014/01/19 职场文书
干部个人对照检查材料
2014/08/25 职场文书
暑假社会实践心得体会
2014/09/02 职场文书
党员干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
小学教师师德整改措施
2014/09/29 职场文书
检举信的写法
2019/04/10 职场文书