PHP Cookie登入驗證技巧講解_PHP教程

來源:互聯網
上載者:User
一個網站的建設目的就是功能的完整性。其中有一個功能就是使用者登入驗證的實現。下面我們就向大家詳細介紹有關

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登入驗證的實現方法。


http://www.bkjia.com/PHPjc/445946.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/445946.htmlTechArticle一個網站的建設目的就是功能的完整性。其中有一個功能就是使用者登入驗證的實現。下面我們就向大家詳細介紹有關 PHP Cookie登入驗證代碼...

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.