您好,登錄后才能下訂單哦!
怎么在PHP中利用session記錄用戶的登陸信息?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
1.簡單的登錄界面代碼示例:
login.html
<!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"><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>
2.簡單的用于連接數據庫的PHP文件代碼示例:
db.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; }
這里我們定義了一個sql方法用來查詢數據庫表中字段,并返回數據。
那么如果有新手不清楚PHP連接數據庫的方法,可以參考學習這篇文章【PHP怎么連接Mysql數據庫】。
3.檢驗用戶登錄信息的代碼示例:
check.php
<?php session_start(); include "db.php"; @$name = $_POST['username']; @$pas = $_POST['password']; $row = sql('user', '*', "username = '$name'"); if (!$row) { return "用戶名不存在!請檢查用戶名~~"; } if ($row['password'] == $pas) { $_SESSION['username'] = "$name"; echo "<script> alert('登錄成功!正在跳轉...') </script>"; echo "<a href='index.php'>如果跳轉失敗請點擊跳轉~~</a>"; header("Refresh:1;url=index.php"); }
這里我們要開啟session,并用include引入數據庫,然后用if語句判斷查詢提交過來的數據并將用戶名提交給session來記錄,即判斷用戶名密碼是否存在及是否相等。
4.登錄成功后跳轉的頁面代碼示例:
index.php
<?php echo "<h2>這里是主頁</h2>"; session_start(); $name = $_SESSION['username']; if ($name) { echo "<script> alert(\"尊敬的$name ,歡迎回來!!\"); </script>"; }else{ echo "<script> alert('您還尚未登錄!請返回登錄~~') </script>"; echo "<a href='index.php'>如果跳轉失敗請點擊跳轉~~</a>"; header("Refresh:1;url=login.html"); }
那么上述代碼login.html,db.php,check.php和index.php就是一個簡單的用session來實現記錄用戶登錄信息的程序。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。