热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

phpcookie登录验证代码

提供一款可以自动cookie登录方法,用户可以在登录时选择保存进程几天几个月等,我们只要进来页面时判断一下就KO了。html页面<html><head><t

提供一款可以自动COOKIE登录方法,用户可以在登录时选择保存进程几天几个月等,我们只要进来页面时判断一下就KO了。

html页面

  1.  
  2.  
  3.  
  4. "Content-Type" cOntent="text/html; charset=gb2312"
  5.   
  6.  
  7. "form1" method="post" action="login.php"
  8. "300" border="0" align="center" cellpadding="2" cellspacing="2"
  9.      
  10.       "150">"right">用户名:
 
  •       "150">"text" name="username"
  •      
  •      
  •       "right">密码:
  •  
  •       "password" name="passcode"
  •      
  •      
  •       "right">COOKIE保存时间:
  •  
  •       "COOKIE" id="COOKIE"
  •         "0" selected>浏览器进程 
  •         "1">保存1天 
  •         "2">保存30天 
  •         "3">保存365天 
  •        
  •      
  •  
  • "center"
  •     "submit" name="Submit" value="Submit"
  •     "reset" name="Reset" value="Reset"
  •  
  •  
  •  
  •  
  • login.php

    1. @mysql_connect("localhost""root","1981427")     //选择数据库之前需要先连接数据库服务器 
    2. or die("数据库服务器连接失败"); 
    3. @mysql_select_db("test")      //选择数据库mydb 
    4. or die("数据库不存在或不可用"); 
    5. //获取用户输入 
    6. $username = $_POST[&#39;username&#39;]; 
    7. $passcode = $_POST[&#39;passcode&#39;]; 
    8. $COOKIE   = $_POST[&#39;COOKIE&#39;]; 
    9. //执行SQL语句 
    10. $query = @mysql_query("select username, userflag from users " 
    11. ."where username = &#39;$username&#39; and passcode = &#39;$passcode&#39;"
    12. or die("SQL语句执行失败"); 
    13. //判断用户是否存在,密码是否正确 
    14. if($row = mysql_fetch_array($query)) 
    15. if($row[&#39;userflag&#39;] == 1 or $row[&#39;userflag&#39;] == 0)    //判断用户权限信息是否有效 
    16.    switch($COOKIE)         //根据用户的选择设置COOKIE保存时间 
    17.    { 
    18.     case 0:         //保存COOKIE为浏览器进程 
    19.      setCOOKIE("username"$row[&#39;username&#39;]); 
    20.      break
    21.     case 1:         //保存1天 
    22.      setCOOKIE("username"$row[&#39;username&#39;], time()+24*60*60); 
    23.      break
    24.     case 2:         //保存30天 
    25.      setCOOKIE("username"$row[&#39;username&#39;], time()+30*24*60*60); 
    26.      break
    27.     case 3:         //保存365天 
    28.      setCOOKIE("username"$row[&#39;username&#39;], time()+365*24*60*60); 
    29.      break
    30.    } 
    31.    header("location: main.php");      //自动跳转到main.php 
    32. else 
    33.    echo "用户权限信息不正确"
    34. else 
    35. echo "用户名或密码错误"
    36. ?> 

    main.php

    1. session_start(); 
    2. if(isset($_COOKIE[&#39;username&#39;])) 
    3. @mysql_connect("localhost""root","1981427")     //选择数据库之前需要先连接数据库服务器 
    4. or die("数据库服务器连接失败"); 
    5. @mysql_select_db("test")      //选择数据库mydb 
    6. or die("数据库不存在或不可用"); 
    7. //获取Session 
    8. $username = $_COOKIE[&#39;username&#39;]; 
    9. //执行SQL语句获得userflag的值 
    10. $query = @mysql_query("select userflag from users " 
    11. ."where username = &#39;$username&#39;"
    12. or die("SQL语句执行失败"); 
    13. $row = mysql_fetch_array($query); 
    14. //获得用户权限信息 
    15. $flag = $row[&#39;userflag&#39;]; 
    16. //根据userflag的值输出不同的欢迎信息 
    17. if($flag == 1) 
    18.    echo "欢迎管理员".$_SESSION[&#39;username&#39;]."登录系统"
    19. if($flag == 0) 
    20.    echo "欢迎用户".$_SESSION[&#39;username&#39;]."登录系统"
    21. echo "logout.php" mce_href="logout.php">注销"
    22. else 
    23. echo "您没有权限访问本页面"
    24. ?> 

    logout.php

    1. setCOOKIE("username"); 
    2. echo "注销成功"
    3. ?> 

    推荐阅读
    author-avatar
    三少乾坤_943
    这个家伙很懒,什么也没留下!
    Tags | 热门标签
    RankList | 热门文章
    PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有