ホームページ  >  記事  >  バックエンド開発  >  PHP Cookie ベースのログインを 1 回で修正する方法

PHP Cookie ベースのログインを 1 回で修正する方法

醉折花枝作酒筹
醉折花枝作酒筹オリジナル
2021-03-24 11:06:591833ブラウズ

現在では、クライアントの Cookie に基づいてパスワードを自動ログインする機能を実装している人がほとんどですが、PHP も例外ではなく、困っている友人が参照することができます。

PHP Cookie ベースのログインを 1 回で修正する方法

#php のパスワードを記憶して自動的にログインするためのソリューションは、実際にはセッションと Cookie の操作です。

まず、フォーム要素、名前、パスワード、ログイン ボタンが記述された HTML テンプレートが必要です。ファイル名は、login.php です。ログイン ページは主にこのページで実行されます。 。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8" />
<title>请登录</title>
</head>
<body>
<form method="post" action="login.php">
    姓名:<input type="text" name="username" />
    密码:<input type="password" name="password" />
    <input type="submit" name="submit" value="登录" />
</form>
</body>
</html>

HTML テンプレートがあるだけでは十分ではありません。値を渡す必要があります。この Web サイトのメンバー (またはユーザー) が 1 人だけであると仮定すると、名前をユーザーの名前と一致させる必要があります。コードは次のとおりです:

if (isset($_POST[&#39;submit&#39;])) {
    if(isset($_POST[&#39;username&#39;]) && isset($_POST[&#39;password&#39;]) && $_POST[&#39;username&#39;]===&#39;cmcc&#39; && $_POST[&#39;password&#39;]===&#39;123456&#39;){
        if (setcookie(&#39;username&#39;,$_POST[&#39;username&#39;],time()+3600)) {
            header(&#39;Location:lesson9.php?url=lesson8.php&&=登录成功,正在跳转中!&#39;);
        }else{
            echo &#39;cookie设置失败!&#39;;
        }
    }else{
        header(&#39;Location:lesson9.php?url=lesson8.php&&=用户名或密码填写错误,登录失败!&#39;);
    }
}
?>

ログインして Web サイトにアクセスした後、ログインが必要であることは表示されません。今回は、判定するための if 関数を設定する必要があります。

<?php
if (isset($_COOKIE[&#39;username&#39;])&&$_COOKIE[&#39;username&#39;]===&#39;cmcc&#39;) {
    exit("您已经登录请不要重复登录");
}

ログイン エラーが発生したため、このデータを受け入れて再度ログインするには、新しいファイル weclome.php を作成し、そのファイルに次のように書き込む必要があります。

<?php
   if (isset($_COOKIE[&#39;username&#39;])&&$_COOKIE[&#39;username&#39;]===&#39;cmcc&#39;) {
       echo "亲爱的{$_COOKIE[&#39;username&#39;]}您好,欢迎回来!";
   }else{
       echo "<a href=&#39;lesson7.php&#39;>请登录</a>";
   }
?>

現時点での作業は完了です。ログイン ページ上のすべての操作。簡単に参照できるように、login.php の完全なコードを以下に示します。


<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8" />
<title>请登录</title>
</head>
<body>
<form method="post" action="login.php">
    姓名:<input type="text" name="username" />
    密码:<input type="password" name="password" />
    <input type="submit" name="submit" value="登录" />
</form>
</body>
</html>

推奨学習: 「PHP ビデオ チュートリアル

以上がPHP Cookie ベースのログインを 1 回で修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。