php中session登入驗證的例子

來源:互聯網
上載者:User
  1. Login
複製代碼

二、登入檢測頁

  1. @mysql_connect("localhost", "root","1981427") //選擇資料庫之前需要先串連資料庫伺服器
  2. or die("資料庫伺服器串連失敗");
  3. @mysql_select_db("test") //選擇資料庫mydb
  4. or die("資料庫不存在或不可用");
  5. //擷取使用者輸入
  6. $username = $_POST['username'];
  7. $passcode = $_POST['passcode'];
  8. //執行SQL語句獲得Session的值
  9. $query = @mysql_query("select username, userflag from users "
  10. ."where username = '$username' and passcode = '$passcode'")
  11. or die("SQL語句執行失敗");
  12. //判斷使用者是否存在,密碼是否正確
  13. if($row = mysql_fetch_array($query))
  14. {
  15. session_start(); //標誌Session的開始
  16. //判斷使用者的許可權資訊是否有效,如果為1或0則說明有效
  17. if($row['userflag'] == 1 or $row['userflag'] == 0)
  18. {
  19. $_SESSION['username'] = $row['username'];
  20. $_SESSION['userflag'] = $row['userflag'];
  21. echo "歡迎登入,點擊此處進入歡迎介面";
  22. }
  23. else //如果許可權資訊無效輸出錯誤資訊
  24. {
  25. echo "使用者權限資訊不正確";
  26. }
  27. }
  28. else //如果使用者名稱和密碼不正確,則輸出錯誤
  29. {
  30. echo "使用者名稱或密碼錯誤";
  31. }
  32. ?>
複製代碼

三、登出登入頁

  1. unset($_SESSION['username']);
  2. unset($_SESSION['passcode']);
  3. unset($_SESSION['userflag']);
  4. echo "登出成功";
  5. ?>
複製代碼

四、成功登入提示頁

  1. session_start();
  2. if(isset($_SESSION['username']))
  3. {
  4. @mysql_connect("localhost", "root","1981427") //選擇資料庫之前需要先串連資料庫伺服器
  5. or die("資料庫伺服器串連失敗");
  6. @mysql_select_db("test") //選擇資料庫mydb
  7. or die("資料庫不存在或不可用");
  8. //擷取Session
  9. $username = $_SESSION['username'];
  10. //執行SQL語句獲得userflag的值
  11. $query = @mysql_query("select userflag from users "
  12. ."where username = '$username'")
  13. or die("SQL語句執行失敗");
  14. $row = mysql_fetch_array($query);
  15. //判斷當前資料庫中的許可權資訊與Session中的資訊比較,如果不同則更新Session的資訊
  16. if($row['userflag'] != $_SESSION['userflag'])
  17. {
  18. $_SESSION['userflag'] = $row['userflag'];
  19. }
  20. //根據Session的值輸出不同的歡迎資訊
  21. if($_SESSION['userflag'] == 1)
  22. echo "歡迎管理員".$_SESSION['username']."登入系統";
  23. if($_SESSION['userflag'] == 0)
  24. echo "歡迎使用者".$_SESSION['username']."登入系統";
  25. echo "登出";
  26. }
  27. else
  28. {
  29. echo "您沒有許可權訪問本頁面";
  30. }
  31. ?>
複製代碼
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.