0

私が作成したPHP Webサイトでこの問題が発生しました。このウェブサイトは、私がオンラインで入手したログインメカニズムを使用しています。このメカニズムには、「checklogin.php」と呼ばれる .php スクリプトがあります。私の問題は、ログインが有効かどうかを確認するために使用する方法にあります。基本的にその用途は次のとおりです。

<?php

session_start();
if(isset($_SESSION['myusername'])){
//run my site
}
else {header("location:../main_login.php")
?>

ただし、少なくとも 1 人のユーザーがログインしている場合、このコードはすべてのユーザーに対して true を返します。

私の質問はそれです。$_SESSION['myusername'] をログイン ページで指定されたユーザー名と比較する方法はありますか、または MySQL セッションを一意にする方法はありますか。

英語と文法ですみません。

4

1 に答える 1

0

セッションはデフォルトでサーバーファイルであり、情報を保存できます。セッションは ID で識別されます。PHP では、デフォルトの ID は Client Cockie です。セッション開始を使用する場合、$_SESSION Var はその Cookie を介して初期化されます。

このメカニズムを上書きせず$_SESSION['myusername']、それを読む前に上書きしない限り、それはあなたの固有のユーザーでなければなりません。

テストでさまざまなブラウザーを試しますか? そうでない場合は、テスト用のセッション Cookie を削除する必要があります。

于 2014-05-28T09:07:10.140 に答える