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中memcache的应用
Jun 18 PHP
php文件上传的例子及参数详解
Dec 12 PHP
PHP实现HTML生成PDF文件的方法
Nov 07 PHP
php实现字符串翻转的方法
Mar 27 PHP
php eval函数一句话木马代码
May 21 PHP
php中 $$str 中 &quot;$$&quot; 的详解
Jul 06 PHP
thinkphp3.x中session方法的用法分析
May 20 PHP
php mongodb操作类 带几个简单的例子
Aug 25 PHP
yii2.0整合阿里云oss上传单个文件的示例
Sep 19 PHP
详谈symfony window下的安装 安装时候出现的问题以及解决方法
Sep 28 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
Nov 10 PHP
thinkphp5 框架结合plupload实现图片批量上传功能示例
Apr 04 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 fread()使用技巧
2010/01/22 PHP
《PHP编程最快明白》第五讲:php目录、文件操作
2010/11/01 PHP
php中 $$str 中 &quot;$$&quot; 的详解
2015/07/06 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
实例讲解YII2中多表关联的使用方法
2017/07/21 PHP
JavaScript中URL编码函数代码
2011/01/11 Javascript
jQuery网页版打砖块小游戏源码分享
2015/08/20 Javascript
基于jquery animate操作css样式属性小结
2015/11/27 Javascript
原生js实现弹出层效果
2017/01/20 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
js实现1,2,3,5数字按照概率生成
2017/09/12 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
浅谈AngularJS中$http服务的简单用法
2018/05/15 Javascript
VUE项目初建和常见问题总结
2019/09/12 Javascript
js中火星坐标、百度坐标、WGS84坐标转换实现方法示例
2020/03/02 Javascript
[13:56]DAC2018 4.5SOLO赛决赛 MidOne vs Paparazi第一场
2018/04/06 DOTA
用Python和MD5实现网站挂马检测程序
2014/03/13 Python
python中django框架通过正则搜索页面上email地址的方法
2015/03/21 Python
用Python实现服务器中只重载被修改的进程的方法
2015/04/30 Python
浅谈python 导入模块和解决文件句柄找不到问题
2018/12/15 Python
python dlib人脸识别代码实例
2019/04/04 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
使用python实现学生信息管理系统
2021/02/25 Python
HTML5+CSS3应用详解
2014/02/24 HTML / CSS
婚鞋、新娘鞋、礼服鞋、童鞋:Nina Shoes
2019/09/04 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
SQL Server面试题
2013/04/04 面试题
市场部业务员岗位职责
2014/04/02 职场文书
水电站项目建议书
2014/05/12 职场文书
媒体宣传策划方案
2014/05/25 职场文书
护士节演讲稿开场白
2014/08/25 职场文书
颐和园导游词400字
2015/01/30 职场文书
大学军训决心书
2015/02/05 职场文书
创业计划书之零食店(进口)
2019/09/24 职场文书
MySQL基础快速入门知识总结(附思维导图)
2021/09/25 MySQL
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android