Web開発では、ユーザーログインに遭遇することがよくあります。ユーザーエクスペリエンスを向上させるために、Cookieテクノロジーを使用して「Remember Me」関数を実装して、ユーザーが次にWebページにアクセスしたときに再度ログインする必要はありません。この記事では、PHPを使用してフォームを処理し、Cookieを使用してこの機能を達成する方法について説明します。
まず、ユーザーがユーザー名とパスワードを入力できるようにするHTMLフォームを作成し、ユーザーがログインステータスを覚えているかどうかを選択するためのチェックボックスを提供する必要があります。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ログイン</title>
</head>
<body>
<form action="login.php" method="POST">
<label for="username">ユーザー名前:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">パスワード:</label>
<input type="password" id="password" name="password"><br><br>
<label for="remember">私を覚えてますか:</label>
<input type="checkbox" id="remember" name="remember"><br><br>
<input type="submit" value="ログイン">
</form>
</body>
</html>
ログインフォームのデータを処理するlogin.phpという名前のphpファイルを作成します。
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// 获取表单提交的用户名前和密码
$username = $_POST['username'];
$password = $_POST['password'];
// 验证用户名前和密码是否正确
if ($username == 'admin' && $password == '123456') {
// ユーザーがログインステータスを覚えておくことを選択した場合,セットCookie保存用户名前和密码
if (isset($_POST['remember'])) {
setcookie('username', $username, time()+3600*24*7); // 保存7空
setcookie('password', $password, time()+3600*24*7);
}
// ログインが成功した後,別のページにジャンプします
header("Location: welcome.php");
} else {
echo '用户名前或密码错误!';
}
}
?>
ユーザーのログインが成功した後、Welcome.phpと呼ばれるPHPファイルを作成してウェルカムページを表示します。このページでは、Cookieのユーザー名に基づいてユーザーを歓迎できます。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<?php
if (isset($_COOKIE['username'])) {
$username = $_COOKIE['username'];
echo '<h1>おかえり、 ' 。 $ username。 '!</h1> ';
} それ以外 {
エコー '<h1>最初にログインしてください!</h1> ';
}
?>
</html>上記のコードでは、ISSET($ _ cookie ['username'])を使用して、ユーザー名がCookieに保存されているかどうかを判断します。存在する場合は、$ _Cookie ['username']を介してユーザー名を取得し、ページに歓迎メッセージを出力します。それ以外の場合、ユーザーは最初にログインするように求められます。
上記の手順を通じて、シンプルなPHPログインフォームを実装し、Cookieを使用して「Remember Me」関数を実装できます。ユーザーが「Memember Me」オプションをチェックし、正常にログインすると、次回Webページにアクセスすると、自動的にログインします。
関連タグ:
Cookie