ホームページ  >  記事  >  バックエンド開発  >  現在のユーザーが別の場所にログインしていることを確認するための PHP メソッド、現在のユーザーは別の場所にいます_PHP チュートリアル

現在のユーザーが別の場所にログインしていることを確認するための PHP メソッド、現在のユーザーは別の場所にいます_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:10:161249ブラウズ

PHP を使用して現在のユーザーが別の場所にログインしていることを確認する方法

この記事の例では、現在のユーザーが別の場所にログインしていることを PHP がどのように判断するかを説明します。参考のためにみんなで共有してください。具体的な分析は次のとおりです:

主なアイデアは次のとおりです:
1. ログイン時に、ユーザーのセッションIDを記録します
2. ログインを検証する際、記録されたユーザーのセッションIDと現在のセッションIDを照合します
3. 同じでない場合は、別の場所でログインしてください

ここをクリックして、この Web サイトから完全なサンプルコードをダウンロードしてください。

まず、http://localhost/login_single/index.php にアクセスしてログインステータスを確認します。
Index.php ページのコードは次のとおりです:

コードをコピーします コードは次のとおりです:

//セッションを開く
session_start();

header("コンテンツタイプ: text/html; charset=utf-8");

//セッションでユーザー情報を取得します
$ユーザー名=$_SESSION['ユーザー名'];

//有効かどうかを判断する
if(!isset($ユーザー名)){
echo "ログインしていません!ログイン";
exit();
}

//ログイン時に保存されるユーザーのセッションID
$sessin_id=file_get_contents('session_id/'.$username);

//現在のセッションIDが以前に記録されたセッションIDと一致しない場合
// 他の場所でログインしていることを示します
if(session_id() != $sessin_id){
// 現在のユーザーをログアウトします
unset($_SESSION['ユーザー名']);
echo "他の場所でログインしています!再度ログイン";
exit();
}その他{
echo "ようこそ:".$username;
echo " ログアウト";
}

echo "

--これはログイン後に表示される内容です--

";

ログインしていないユーザーの場合は、http://localhost/login_single/login.html ログイン ページにジャンプするように求められます。login.html ページのコードは次のとおりです。

コードをコピーします コードは次のとおりです:


<頭>

ログイン



ユーザー名:

パスワード:




ヒント: テストユーザー名: admin パスワード: 123




ログイン成功後、login.phpページにて対応するセッションの判定が行われます。

login.php ページのコードは次のとおりです:

コードをコピーします コードは次のとおりです:
//セッションを開く
session_start();

//エンコーディングを設定します

header("コンテンツタイプ: text/html; charset=utf-8");

//フォームから送信されたコンテンツを受け取ります

$ユーザー名=$_POST['ユーザー名'];
$password=$_POST['パスワード'];

//ユーザーログインのシミュレーション

if($username=="管理者" && $password=="123"){

//ログインに成功し、ユーザー名をセッションに保存します
$_SESSION['ユーザー名']=$ユーザー名;

//ディレクトリを作成します
if(!file_exists('session_id')){
mkdir('セッションID');
}

//保存ファイル名
$filename='session_id/'.$username;

//現在ログインしているユーザーのSessionId
$session_id=session_id();

//SessionIDを対応するファイルに保存するとき
//実用的なアプリケーション、データベース、memcache などに保存可能
file_put_contents($filename,$session_id);

//ホームページにジャンプします
header('場所:index.php');

}その他{
echo ('<script>alert("ログイン失敗");window.location="login.html"</script>');
exit();
}

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

www.bkjia.com本当http://www.bkjia.com/PHPjc/938847.html技術記事 PHP を使用して現在のユーザーが別の場所にログインしていることを確認する方法 この例では、PHP が現在のユーザーが別の場所にログインしていることを確認する方法について説明します。参考のためにみんなで共有してください。具体的には…
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。