對于初入門的PHP新手來說,或許有一定的難度,建議大家先看看PHP中session的基礎含義,需要的朋友可以選擇參考,
下面我們就通過具體的代碼示例,為大家詳細的介紹PHP中session實作記錄用戶登錄資訊的具體方法,
1.簡單的登錄界面代碼示例:
login.html
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>登錄</title> 6 <style type="text/css"> 7 body { 8 background: url(images/bg.png); 9 } 10 11 .clear { 12 clear: both; 13 } 14 15 .login { 16 width: 370px; 17 margin: 100px auto 0px; 18 text-align: center; 19 } 20 21 input[type="text"] { 22 width: 360px; 23 height: 50px; 24 border: none; 25 background: #fff; 26 border-radius: 10px; 27 margin: 5px auto; 28 padding-left: 10px; 29 color: #745A74; 30 font-size: 15px; 31 } 32 33 input[type="checkbox"] { 34 float: left; 35 margin: 5px 0px 0px; 36 } 37 38 span { 39 float: left; 40 } 41 42 .botton { 43 width: 130px; 44 height: 40px; 45 background: #745A74; 46 border-radius: 10px; 47 text-align: center; 48 color: #fff; 49 margin-top: 30px; 50 line-height: 40px; 51 } 52 </style> 53 </head> 54 <body> 55 <div class="login"> 56 <form action="check.php" method="post"> 57 <img src=https://www.cnblogs.com/a609251438/p/"images/header.png"><br> 58 <input type="text" name="username" placeholder="請輸入用戶名!" value=https://www.cnblogs.com/a609251438/p/""><br> 59 <input type="text" name="password" placeholder="請輸入密碼!" value=https://www.cnblogs.com/a609251438/p/""><br> 60 <input type="submit" class="botton" value=https://www.cnblogs.com/a609251438/p/"login"> 61 </form> 62 <div class="clear"></div> 63 </div> 64 </body> 65 66 </html>
2.簡單的用于連接資料庫的PHP檔案代碼示例:
db.php
1 <?php 2 3 $dbName = 'demo'; 4 $host = '127.0.0.1'; 5 $user = 'root'; 6 $password = 'root'; 7 8 $dsn = "mysql:host=$host;dbname=$dbName"; 9 $pdo = new PDO($dsn, $user, $password); 10 11 function sql($table, $field = '*', $where = '') 12 { 13 global $pdo; 14 $sql = 'select' . ' ' . $field . ' ' . 'from' . ' ' . $table . ' where ' . $where; 15 $data = https://www.cnblogs.com/a609251438/p/$pdo->query($sql)->fetch(); 16 return $data; 17 }
這里我們定義了一個sql方法用來查詢資料庫表中欄位,并回傳資料,
那么如果有新手不清楚PHP連接資料庫的方法,可以參考學習一下【PHP怎么連接Mysql資料庫】的文章
3.檢驗用戶登錄資訊的代碼示例:
check.php
1 <?php 2 session_start(); 3 include "db.php"; 4 @$name = $_POST['username']; 5 @$pas = $_POST['password']; 6 7 $row = sql('user', '*', "username = '$name'"); 8 if (!$row) { 9 return "用戶名不存在!請檢查用戶名~~"; 10 } 11 12 if ($row['password'] == $pas) { 13 $_SESSION['username'] = "$name"; 14 echo "<script> 15 alert('登錄成功!正在跳轉...') 16 </script>"; 17 echo "<a href='https://www.cnblogs.com/a609251438/p/index.php'>如果跳轉失敗請點擊跳轉~~</a>"; 18 header("Refresh:1;url=index.php"); 19 }
這里我們要開啟session,并用include引入資料庫,然后用if陳述句判斷查詢提交過來的資料并將用戶名提交給session來記錄,即判斷用戶名密碼是否存在及是否相等,
4.登錄成功后跳轉的頁面代碼示例:
index.php
<?php echo "<h1>這里是主頁</h1>"; session_start(); $name = $_SESSION['username']; if ($name) { echo "<script> alert(\"尊敬的$name ,歡迎回來!!\"); </script>"; }else{ echo "<script> alert('您還尚未登錄!請回傳登錄~~') </script>"; echo "<a href='https://www.cnblogs.com/a609251438/p/index.php'>如果跳轉失敗請點擊跳轉~~</a>"; header("Refresh:1;url=login.html"); }
那么上述代碼login.html,db.php,check.php和index.php就是一個簡單的用session來實作記錄用戶登錄資訊的程式,
我們可以通過瀏覽器訪問進行測驗,首先我們可以在login登錄界面,輸入用戶名密碼,效果如下

?
點擊login登錄,跳轉到check.php,

?
點擊確定

?
如果跳轉失敗就點擊上圖中鏈接,如果跳轉成功,則直接跳轉到index.php主頁面,顯示如下圖:

?

?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/103748.html
標籤:PHP
