-
- //ユーザーがログインしているかどうかを確認します
- function checklogin(){
- if(emptyempty($_SESSION['user_info'])){ //セッションが空かどうかを確認します
- if (emptyempty ($_COOKIE['username']) || emptyempty($_COOKIE['password'])){ //セッションが空で、ユーザーがログインステータスの記録を選択しなかった場合
- header("location:login .php?req_url=" .$_SERVER['REQUEST_URI']); //ログイン ページに移動し、要求された URL を記録し、ログイン後にそのページにジャンプすると、優れたユーザー エクスペリエンスが得られます。
- }else{ //ユーザーはログイン状態を記憶することを選択しました
- $user = getUserInfo($_COOKIE['username'],$_COOKIE['password']) //ユーザーの個人情報を取得します
- if(empty( $ user)){ //ユーザー名とパスワードが間違っているため、情報が利用できません。ログインページに移動します
- header(”location:login.php?req_url=”.$_SERVER['REQUEST_URI']);
- } else{
- $_SESSION ['user_info'] = $user; // ユーザー名とパスワードが正しい場合は、ユーザーの個人情報をセッションに入力します
- }
- }
- }
- }
コードをコピーします 手順:
バックグラウンドですべてのページにアクセスするときは、まず上記のチェックを実行する必要があります
2. ユーザーがログイン情報を送信する
ユーザーがユーザー名とパスワードを入力すると、ここに送信されます。
/** - ユーザーが送信したログイン情報の検出
- リンク: http://bbs.it-home.org
- */
- $username = trim($_POST['username']);
- $password = md5(trim($_POST[ 'パスワード']));
- $validatecode = $_POST['validateCode'];
- $ref_url = $_GET['req_url'];
- $remember = $_POST['remember'];
- < ;p>$err_msg = ”;
- if($validatecode!=$_SESSION['checksum']){
- $err_msg = “確認コードが正しくありません”;
- }elseif($username==” || $password== ”){
- $err_msg = “ユーザー名もパスワードも空にすることはできません”;
- }else{
- $row = getUserInfo($username,$password);
if(emptyempty($row) )){
- $err_msg = "ユーザー名とパスワードの両方が間違っています";
- }else{
- $_SESSION['user_info'] = $row;
- if(!emptyempty($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”);
- }
- }
- }
- $username = trim($_POST['username']);
- $password = md5(trim($_POST['password']));
- $validatecode = $_POST['validateCode'];
- $ref_url = $_GET['req_url'];
- $remember = $_POST['remember'];
$err_msg = ”;
- if ($validatecode!=$_SESSION['checksum']){
- $err_msg = "認証コードが正しくありません";
- }elseif($username==" || $password=="){
- $err_msg = "ユーザー名とパスワードを空にすることはできません";
- }else{
- $row = getUserInfo($username,$password);gt;
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 ");
- }
- }
- }
-
コードをコピー
$ref_url についての説明:
仮定します: ユーザー A が b.php にアクセスしますが、ユーザー A はログインしておらず、ログイン ページ login.php にジャンプし、ログイン ページでユーザーとパスワードを入力し、確認後にページ b.php にジャンプします。ジャンプのデフォルトページ main_user.php。
b.php はユーザー A がアクセスしたいページであるため、ユーザー エクスペリエンスは向上します。
3. ユーザーがログアウトすると、ログインステータスの記録がクリアされます。
ユーザーがログアウトするためにクリックしたときは、悪意のある人がログイン情報を使用して損害を引き起こすことを防ぐために、必ず現在のログイン ステータスをクリアしてください。
-
- //ログアウト
- function logout(){
- unset($_SESSION['user_info']);
- if(!emptyempty($_COOKIE['username']) || emptyempty ($_COOKIE['パスワード'])){
- setcookie("ユーザー名", null, time()-3600*24*365);
- setcookie("パスワード", null, time()-3600*24*365) ;
- }
- }
- ?>
コードをコピー
さて、php を使用してパスワードを記憶し、自動的にログインする方法を紹介しました。何かを得ることができれば幸いです。
スクリプト スクールはあなたに捧げられます。
|