PHP Cookie登录验证技巧讲解

原创
2016-06-13 11:11:50480浏览

一个网站的建设目的就是功能的完整性。其中有一个功能就是用户登录验证的实现。下面我们就向大家详细介绍有关

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登录验证的实现方法。


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
PHP培训优惠套餐