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

王林
王林original
2023-08-10 16:58:451082parcourir

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.

  1. Conception de formulaire HTML
    Tout d'abord, nous devons créer un formulaire HTML qui permet aux utilisateurs de saisir leur nom d'utilisateur et leur mot de passe, et fournit une case à cocher permettant à l'utilisateur de choisir s'il doit se souvenir du statut de connexion.
<!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>
  1. Traitement du formulaire PHP
    Créez un fichier PHP nommé 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页面。若登录失败,则输出错误信息。

  1. 欢迎页面
    创建一个名为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']

rrreee

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.

🎜Enfin, redirigez l'utilisateur vers la page welcome.php via la fonction header. Si la connexion échoue, un message d'erreur sera affiché. 🎜
    🎜Page d'accueil🎜Créez un fichier PHP nommé 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn