本篇文章主要介紹給大家PHP使用cookie來實作記錄使用者登入資訊的方法。
cookie也就是儲存在使用者本地端上的資料。那麼在之前的文章【PHP中cookie怎麼記錄及刪除變數? 】中,已經為大家詳細介紹過cookie是什麼以及基礎操作用法。需要的朋友可以先了解參考下。
cookie的使用除了在我們日常專案開發中被需要,在我們PHP面試過程中也是較為常見的一個考點,大家是很有必須學習掌握的。
下面我們就結合具體的程式碼範例,跟大家介紹cookie實作記錄使用者登入資訊的方法。
以下方法與先前介紹的session實作記錄使用者登入資訊的想法及使用範例基本上是一樣的,需要的朋友也可以選擇了解下【PHP如何用session來記錄使用者登陸資訊? 】這篇文章。
一、登入介面程式碼範例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>登录</title> <style type="text/css"> body { background: url(images/bg.png); } .clear { clear: both; } .login { width: 370px; margin: 100px auto 0px; text-align: center; } input[type="text"] { width: 360px; height: 50px; border: none; background: #fff; border-radius: 10px; margin: 5px auto; padding-left: 10px; color: #745A74; font-size: 15px; } input[type="checkbox"] { float: left; margin: 5px 0px 0px; } span { float: left; } .botton { width: 130px; height: 40px; background: #745A74; border-radius: 10px; text-align: center; color: #fff; margin-top: 30px; line-height: 40px; } </style> </head> <body> <div class="login"> <form action="check.php" method="post"> <img src="images/header.png" alt="PHP cookie實現記錄使用者登陸資訊的方法(圖文+影片)" ><br> <input type="text" name="username" placeholder="请输入用户名!" value=""><br> <input type="text" name="password" placeholder="请输入密码!" value=""><br> <input type="submit" class="botton" value="login"> </form> <div class="clear"></div> </div> </body> </html>
二、連接資料庫的PHP檔案程式碼範例:
<?php $dbName = 'demo'; $host = '127.0.0.1'; $user = 'root'; $password = 'root'; $dsn = "mysql:host=$host;dbname=$dbName"; $pdo = new PDO($dsn, $user, $password); function sql($table, $field = '*', $where = '') { global $pdo; $sql = 'select' . ' ' . $field . ' ' . 'from' . ' ' . $table . ' where ' . $where; $data = $pdo->query($sql)->fetch(); return $data; }
三、使用者登入資訊的程式碼範例
<?php include "db.php"; @$name = $_POST['username']; @$pas = $_POST['password']; $row = sql('user', '*', "username = '$name'"); if (!$row) { echo "<script> alert('用户名不存在!请检查用户名~~') </script>"; header("Refresh:1;url=login.html"); return; } if ($row['password'] == $pas) { setcookie("username", "$name", time() + 36000); echo "<script> alert('登录成功!正在跳转...') </script>"; echo "<a href='index.php'>如果跳转失败请点击跳转~~</a>"; header("Refresh:1;url=index.php"); return; } echo "密码错误!请检查密码"; header("Refresh:1;url=login.html");
這裡我們將使用者登入成功後的資訊儲存到cookie中,並且保留時間為10個小時。
四、主頁程式碼範例:
<?php echo "<h1>这里是主页</h1>"; @$name = $_COOKIE['username']; echo $_COOKIE['username']; if ($name) { echo "<script> alert(\"尊敬的$name ,欢迎回来!!\"); </script>"; }else{ echo "<script> alert('您还尚未登录!请返回登录~~') </script>"; echo "<a href='login.html'>如果跳转失败请点击跳转~~</a>"; header("Refresh:1;url=login.html"); }
透過瀏覽器訪問,效果實作如下圖所示:
當然我們可以檢驗一下使用者資訊是否成功儲存到cookie中,在index.php中,直接寫上如下程式碼:
<?php echo $_COOKIE['username'];
結果如下圖:
如圖我們輸出了cookie中所儲存的使用者名稱訊息,也就表示使用者資訊已經儲存到cookie中了。
本篇文章就是關於PHP使用cookie來實現記錄使用者登入資訊的方法介紹,希望對需要的朋友有幫助!
想要了解更多PHP知識,可以關注PHP中文網PHP影片教學,歡迎大家參考學習!
以上是PHP cookie實現記錄使用者登陸資訊的方法(圖文+影片)的詳細內容。更多資訊請關注PHP中文網其他相關文章!