php保持使用者登陸狀態,退出登陸!
阿新 • • 發佈:2018-12-21
1.保持使用者登陸狀態,我用到的是session!需要把html檔案改為php檔案:
當用戶登陸成功的時候,把使用者名稱存到session中,記得要在php頭部寫 session_start();
程式碼如下: (php中)
<?php session_start();//重要 $userName = !empty($_POST['username']) ? trim($_POST['username']) : '沒有資料'; $password = !empty($_POST['password']) ? trim($_POST['password']) : '沒有資料'; //連結資料庫 $connect = mysqli_connect('127.0.0.1','root','123456','team-project'); if(!$connect) { echo '連結資料庫失敗'; return; } mysqli_set_charset($connect , 'utf-8'); $sql = "select userName,password from users where userName = '{$userName}'"; $query = mysqli_query( $connect,$sql); if(!$query) { echo '讀取錯誤'; return; } $row = mysqli_fetch_assoc($query); if($row['userName'] == $userName && $row['password'] == $password) { $_SESSION['username'] = $userName; //把username存到session中 echo 'yes'; } else { echo 'no'; } ?>
則在其他頁面我們只需要在頭部新增: (html中)
<?php
session_start();
?>
然後在html中判斷有沒有設定$_SESSION['username'],如果設定了,則顯示出來,如果沒有,則顯示其他的 (html中)
<ul class="header-right fr"> <li> <?php if(isset($_SESSION['username'])) : ?> <a href="#">歡迎您,<?php echo $_SESSION['username']; ?></a> <a href="exit.php">退出登陸</a> <?php else: ?> <a href="register/index.php">註冊</a> <a href="login/index.php">登陸</a> <?php endif ?> </li> <li> <a href="#">中文(簡體)</a> </li> <li> <a href="#"> 400-01-0000</a> </li> <li> <a href="#">天貓旗艦店</a> </li> </ul>
其他頁面均是如此
2.退出登陸
<?php
session_start();
function loginOut(){
unset($_SESSION['username']);
// header('Location : /index.php');
}
loginOut();
echo "<script>window.location.href='index.php'</script>";
?>