欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP Cookie登录验证技巧讲解

程序员文章站 2023-12-31 16:35:46
...
一个网站的建设目的就是功能的完整性。其中有一个功能就是用户登录验证的实现。下面我们就向大家详细介绍有关

PHP Cookie登录验证代码示例:

  1. html>
  2. head>
  3. title>Login /title>
  4. meta http-equiv="Content-Type"
    content="text/html; charset=gb2312">
  5. /head>
  6. body>
  7. form name="form1" method="post"
    action="login.php">
  8. table width="300" border="0" align="center"
    cellpadding="2" cellspacing="2">
  9. tr>
  10. td width="150"> div align="right">
    用户名: /div> /td>
  11. td width="150"> input type="text"
    name="username"> /td>
  12. /tr>
  13. tr>
  14. td> div align="right">密码: /div> /td>
  15. td> input type="password" name="passcode"> /td>
  16. /tr>
  17. tr>
  18. td> div align="right">Cookie保存时间: /div> /td>
  19. td> select name="cookie" id="cookie">
  20. option value="0" selected>浏览器进程 /option>
  21. option value="1">保存1天 /option>
  22. option value="2">保存30天 /option>
  23. option value="3">保存365天 /option>
  24. /select> /td>
  25. /tr>
  26. /table>
  27. p align="center">
  28. input type="submit" name="Submit" value="Submit">
  29. input type="reset" name="Reset" value="Reset">
  30. /p>
  31. /form>
  32. /body>
  33. /html>
  1. ?php
  2. @mysql_connect("localhost", "root","1981427")
    //选择数据库之前需要先连接数据库服务器
  3. or die("数据库服务器连接失败");
  4. @mysql_select_db("test") //选择数据库mydb
  5. or die("数据库不存在或不可用");
  6. //获取用户输入
  7. $username = $_POST['username'];
  8. $passcode = $_POST['passcode'];
  9. $cookie = $_POST['cookie'];
  10. //执行SQL语句
  11. $query = @mysql_query("select username,
    userflag from users "
  12. ."where username = '$username' and
    passcode = '$passcode'")
  13. or die("SQL语句执行失败");
  14. //判断用户是否存在,密码是否正确
  15. if($row = mysql_fetch_array($query))
  16. {
  17. if($row['userflag'] == 1 or $row['userflag'] == 0)
    //判断用户权限信息是否有效
  18. {
  19. switch($cookie) //根据用户的选择设置cookie保存时间
  20. {
  21. case 0: //保存Cookie为浏览器进程
  22. setcookie("username", $row['username']);
  23. break;
  24. case 1: //保存1天
  25. setcookie("username", $row['username'],
    time()+24*60*60);
  26. break;
  27. case 2: //保存30天
  28. setcookie("username", $row['username'],
    time()+30*24*60*60);
  29. break;
  30. case 3: //保存365天
  31. setcookie("username", $row['username'],
    time()+365*24*60*60);
  32. break;
  33. }
  34. header("location: main.php");
    //自动跳转到main.php
  35. }
  36. else
  37. {
  38. echo "用户权限信息不正确";
  39. }
  40. }
  41. else
  42. {
  43. echo "用户名或密码错误";
  44. }
  45. ?>

PHP Cookie登录验证代码实例:

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

以上及时PHP Cookie登录验证的实现方法。

上一篇:

下一篇: