溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

PHP Cookie登錄驗證技巧是什么

發(fā)布時間:2021-10-18 17:12:19 來源:億速云 閱讀:143 作者:柒染 欄目:編程語言

PHP Cookie登錄驗證技巧是什么,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

一個網(wǎng)站的建設(shè)目的就是功能的完整性。其中有一個功能就是用戶登錄驗證的實現(xiàn)。下面我們就向大家詳細(xì)介紹有關(guān)PHP Cookie登錄驗證的相關(guān)實現(xiàn)方法。

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>瀏覽器進(jìn)程< /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")
     //選擇數(shù)據(jù)庫之前需要先連接數(shù)據(jù)庫服務(wù)器  

  3. or die("數(shù)據(jù)庫服務(wù)器連接失敗");  

  4. @mysql_select_db("test") //選擇數(shù)據(jù)庫mydb  

  5. or die("數(shù)據(jù)庫不存在或不可用");  

  6. //獲取用戶輸入  

  7. $username = $_POST['username'];  

  8. $passcode = $_POST['passcode'];  

  9. $cookie = $_POST['cookie'];  

  10. //執(zhí)行SQL語句  

  11. $query = @mysql_query("select username, 
    userflag from users "  

  12. ."where username = '$username' and 
    passcode = '$passcode'")  

  13. or die("SQL語句執(zhí)行失敗");  

  14. //判斷用戶是否存在,密碼是否正確  

  15. if($row = mysql_fetch_array($query))  

  16. {  

  17. if($row['userflag'] == 1 or $row['userflag'] == 0) 
    //判斷用戶權(quán)限信息是否有效  

  18. {  

  19. switch($cookie) //根據(jù)用戶的選擇設(shè)置cookie保存時間  

  20. {  

  21. case 0: //保存Cookie為瀏覽器進(jìn)程  

  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"); 
    //自動跳轉(zhuǎn)到main.php  

  35. }  

  36. else  

  37. {  

  38. echo "用戶權(quán)限信息不正確";  

  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. //選擇數(shù)據(jù)庫之前需要先連接數(shù)據(jù)庫服務(wù)器  

  7. or die("數(shù)據(jù)庫服務(wù)器連接失敗");  

  8. @mysql_select_db("test") //選擇數(shù)據(jù)庫mydb  

  9. or die("數(shù)據(jù)庫不存在或不可用");  

  10. //獲取Session  

  11. $username = $_COOKIE['username'];  

  12. //執(zhí)行SQL語句獲得userflag的值  

  13. $query = @mysql_query("select 
    userflag from users "  

  14. ."where username = '$username'")  

  15. or die("SQL語句執(zhí)行失敗");  

  16. $row = mysql_fetch_array($query);  

  17. //獲得用戶權(quán)限信息  

  18. $flag = $row['userflag'];  

  19. //根據(jù)userflag的值輸出不同的歡迎信息  

  20. if($flag == 1)  

  21. echo "歡迎管理員".$_SESSION['username']
    ."登錄系統(tǒng)";  

  22. if($flag == 0)  

  23. echo "歡迎用戶".$_SESSION['username']
    ."登錄系統(tǒng)";  

  24. echo "< a href="logout.php" 
    href="logout.php">注銷< /a>";  

  25. }  

  26. else  

  27. {  

  28. echo "您沒有權(quán)限訪問本頁面";  

  29. }  

  30. ?> 

  31. < ?php  

  32. setcookie("username");  

  33. echo "注銷成功";  

  34. ?> 

關(guān)于PHP Cookie登錄驗證技巧是什么問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI