Maison > Article > développement back-end > Traitement des formulaires PHP : utilisation de cookies pour implémenter la fonction Remember Me
Traitement des formulaires PHP : utilisation de cookies pour implémenter la fonction Remember Me
Dans le développement Web, nous rencontrons souvent des situations de connexion d'utilisateurs. Afin d'améliorer l'expérience utilisateur, nous pouvons utiliser la technologie des cookies pour mettre en œuvre la fonction « Se souvenir de moi » afin que les utilisateurs n'aient pas besoin de se reconnecter lors de leur prochaine visite sur la page Web. Cet article expliquera comment utiliser PHP pour traiter les formulaires et utiliser les cookies pour réaliser cette fonction.
<!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
pour traiter les données du formulaire de connexion. 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 '用户名或密码错误!'; } } ?>
在上面的代码中,使用$_POST
数组获取表单中的用户名和密码。然后,通过与预设的用户名和密码进行比较,判断用户输入是否正确。如果用户名和密码正确,接下来判断用户是否选择了“记住我”选项。如果选中了此选项,通过setcookie
函数设置Cookie,在这里我们保存用户名和密码,有效期为7天。
最后,通过header
函数将用户重定向到welcome.php
页面。若登录失败,则输出错误信息。
welcome.php
的PHP文件,用于展示用户登录成功后的欢迎页面。在该页面中,我们可以根据Cookie中的用户名来欢迎用户。<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>欢迎</title> </head> <body> <?php if(isset($_COOKIE['username'])){ $username = $_COOKIE['username']; echo '<h1>欢迎回来,'.$username.'!</h1>'; }else{ echo '<h1>请先登录!</h1>'; } ?> </body> </html>
在上述代码中,使用isset($_COOKIE['username'])
来判断Cookie中是否保存了用户名。如果存在,则通过$_COOKIE['username']
Dans le code ci-dessus, utilisez le tableau $_POST
pour obtenir le nom d'utilisateur et le mot de passe dans le formulaire. Ensuite, en le comparant avec le nom d'utilisateur et le mot de passe prédéfinis, il est jugé si la saisie de l'utilisateur est correcte. Si le nom d'utilisateur et le mot de passe sont corrects, déterminez si l'utilisateur a sélectionné l'option « Se souvenir de moi ». Si cette option est sélectionnée, le cookie est défini via la fonction setcookie
. Ici, nous enregistrons le nom d'utilisateur et le mot de passe, qui sont valables 7 jours.
welcome.php
via la fonction header
. Si la connexion échoue, un message d'erreur sera affiché. 🎜welcome.php
pour afficher la page d'accueil une fois que l'utilisateur s'est connecté avec succès. Sur cette page, nous pouvons accueillir l'utilisateur en fonction du nom d'utilisateur contenu dans le cookie. 🎜🎜rrreee🎜Dans le code ci-dessus, utilisez isset($_COOKIE['username'])
pour déterminer si le nom d'utilisateur est enregistré dans le cookie. S'il existe, obtenez le nom d'utilisateur via $_COOKIE['username']
et affichez le message de bienvenue sur la page. Sinon, invitez d'abord l'utilisateur à se connecter. 🎜🎜Grâce aux étapes ci-dessus, nous pouvons implémenter un simple formulaire de connexion PHP et utiliser des cookies pour implémenter la fonction « se souvenir de moi ». Lorsque l'utilisateur coche l'option « Se souvenir de moi » et se connecte avec succès, il se connectera automatiquement la prochaine fois qu'il visitera la page Web. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!