ホームページ >バックエンド開発 >PHPチュートリアル >パスワードを記憶して次回から自動的にログインするようにphpを実装する方法_PHPチュートリアル
ウェブサイトを構築するとき、パスワードを記憶し、次回から自動的にログインする必要がある、1週間以内にログインする必要がない、などのニーズに頻繁に遭遇します。 1ヶ月以内はログインする必要はありません。この機能は通常、Cookie を通じて実装されます。この記事では、php を使用してこの要件を達成する方法について簡単に説明します。もちろん、この要件を達成するには多くの方法があります。
全体のプロセスは、ユーザーがログインするとき、パスワードを記憶することを選択した場合、またはユーザーが正常にログインした後、1週間ログインする必要がない場合などに、自動ログインを実装するCookieのデータが保存されます。データベースのユーザー テーブルに保存され、次回の自動ログイン時の検証に使用されます。検証に合格した場合は、自動的にログインします。それ以外の場合は、ログインするためにユーザー名とパスワードを入力する必要があります。保存された Cookie の値はランダムなコードを取ることができます。
具体的なサンプルコードは以下のとおりです:
リーリーまた、ウェブサイトの各ページにアクセスする際には、まず以下の機能を確認する必要があります。
$username=trim($_POST['username']); $password=md5(trim($_POST['password'])); $ref_url=$_GET['req_url']; $remember=$_POST['remember'];//是否自动登录标示 $err_msg=''; if($username==''||$password==''){ $err_msg="用户名和密码都不能为空"; }else{ $row=getUserInfo($username,$password); if(empty($row)){ $err_msg="用户名和密码都不正确"; }else{ $_SESSION['user_info']=$row; if(!empty($remember)){//如果用户选择了,记录登录状态就把用户名和加了密的密码放到cookie里面 setcookie("username",$username,time()+3600*24*365); setcookie("password",$password,time()+3600*24*365); } if(strpos($ref_url,"login.php")===false){ header("location:".$ref_url); }else{ header("location:main_user.php"); } } }