PHP session 是一種服務器端的存儲技術,用于在多個頁面之間保存用戶的數據。用戶認證是驗證用戶身份的過程,通常用于限制對特定資源的訪問。下面是一個簡單的 PHP session 與用戶認證流程:
下面是一個簡單的 PHP 代碼示例,展示了如何使用 session 實現用戶認證:
<?php
// 開啟 session
session_start();
// 模擬數據庫中的用戶信息
$username = "user";
$password = "password";
// 檢查用戶是否已登錄
if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true) {
// 用戶已登錄,顯示受保護的內容
echo "歡迎,您已成功登錄!";
echo "<a href='logout.php'>點擊此處登出</a>";
} else {
// 用戶未登錄,檢查是否提交了登錄表單
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// 檢查用戶名和密碼是否正確
if ($_POST["username"] == $username && $_POST["password"] == $password) {
// 登錄成功,設置 session 變量
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $username;
echo "登錄成功!";
} else {
// 登錄失敗,提示用戶
echo "用戶名或密碼錯誤,請重試。";
}
}
// 顯示登錄表單
echo "<form action='' method='post'>
<label for='username'>用戶名:</label>
<input type='text' name='username' id='username'>
<label for='password'>密碼:</label>
<input type='password' name='password' id='password'>
<input type='submit' value='登錄'>
</form>";
}
?>
注意:這個示例僅用于演示目的,實際項目中需要使用更安全的方法(如加密密碼、防止 SQL 注入等)來處理用戶認證。