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 相关文章推荐
分页显示Oracle数据库记录的类之一
Oct 09 PHP
PHP 变量类型的强制转换
Oct 23 PHP
IP138 IP地址查询小偷实现代码
Feb 15 PHP
php入门之连接mysql数据库的一个类
Apr 21 PHP
PHP $_FILES中error返回值详解
Jan 30 PHP
php实现的双向队列类实例
Sep 24 PHP
PHP中的output_buffering详细介绍
Sep 27 PHP
PHP中字符与字节的区别及字符串与字节转换示例
Oct 15 PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
Dec 29 PHP
PHP连接MySQL进行增、删、改、查操作
Feb 19 PHP
PHP中的正则表达式实例详解
Apr 25 PHP
PHP实现分布式memcache设置web集群session同步的方法
Apr 10 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
从Web查询数据库之PHP与MySQL篇
2009/09/25 PHP
PHP中cookie和session的区别实例分析
2014/08/28 PHP
php实现无限级分类
2014/12/24 PHP
jQuery下扩展插件和拓展函数的写法(匿名函数使用的典型例子)
2010/10/20 Javascript
javascript showModalDialog 内跳转页面的问题
2010/11/25 Javascript
jquery win 7透明弹出层效果的简单代码
2013/08/06 Javascript
js页面跳转的常用方法整理
2013/10/18 Javascript
Javascript动态创建div的方法
2015/02/09 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
jQuery异步上传文件插件ajaxFileUpload详细介绍
2015/05/19 Javascript
在ASP.NET MVC项目中使用RequireJS库的用法示例
2016/02/15 Javascript
深入理解Javascript中的作用域链和闭包
2017/04/25 Javascript
基于vue2.0实现简单轮播图
2017/11/27 Javascript
vue+iview写个弹框的示例代码
2017/12/05 Javascript
React 使用recharts实现散点地图的示例代码
2018/12/07 Javascript
从0到1构建vueSSR项目之路由的构建
2019/03/07 Javascript
vue请求服务器数据后绑定不上的解决方法
2019/10/30 Javascript
React Hooks 实现和由来以及解决的问题详解
2020/01/17 Javascript
Vue-cli3多页面配置详解
2020/03/22 Javascript
Python每天必学之bytes字节
2016/01/28 Python
Python入门之后再看点什么好?
2018/03/05 Python
使用requests库制作Python爬虫
2018/03/25 Python
在python3.5中使用OpenCV的实例讲解
2018/04/02 Python
Python实现合并两个有序链表的方法示例
2019/01/31 Python
Python使用PyQt5/PySide2编写一个极简的音乐播放器功能
2020/02/07 Python
使用SQLAlchemy操作数据库表过程解析
2020/06/10 Python
python实现猜数游戏(保存游戏记录)
2020/06/22 Python
Python开发入门——迭代的基本使用
2020/09/03 Python
python中not、and和or的优先级与详细用法介绍
2020/11/03 Python
python Zmail模块简介与使用示例
2020/12/19 Python
什么是servlet
2012/05/08 面试题
数学系毕业生的自我评价
2014/01/10 职场文书
工作建议书范文
2014/05/13 职场文书
银行求职信范文
2014/05/26 职场文书
倡议书的写法
2014/08/30 职场文书
群众路线学习笔记范文
2014/11/06 职场文书