私はHTML/CSS/PHPとMySQLを使いこなしています。私はまだセキュリティを考えていません。HTML - 異なる出力を実行する2つの同一のコード断片?
私は2つのファイルを持っています。最初はpage1.php、もう1つはpage2.phpです。
if (isset($_SESSION["loggedin"])){
echo "<li class='navbar-button' id='right-status'><a>Logged in as admin</a></li>\n";
echo "<li class='navbar-button' id='right-change'><a href='logout.php'>Log Out</a></li>\n";
} else {
echo "<li class='navbar-button' id='right-change'><a href='login.html'>Log In</a></li>";
}
それはそれがない場合には、「管理者としてログイン示し、「LOGGEDIN」という名前の現在のセッションデータが存在するかどうかをチェックします:かなりシンプルな、彼らの両方が、その中にいくつかのPHPコードを持っているナビゲーションバーを持っています - 「ログアウト」をクリックします。このセッションデータが見つからない場合は、Navbarに「ログイン」と表示されます。私はpage1.phpをロードするとnavbarに "admin - Log Outとしてログイン"と表示されますが、page2.phpをロードすると "Log In"と表示されます。これらは両方ともと同じコードを持ち、なぜiの結果が異なるのかわかりません。それが適切かどうかはわかりませんが、page2.phpはpage1.phpと同じフォルダに保存されていません。 Page1.phpのディレクトリは/page1.phpです。 Page2.phpのディレクトリは/folder/page2.phpです。
質問1:PHPセッションは、ウェブサイト全体のすべての単一ファイル/フォルダにデータをグローバルに格納しますか?または単にルートフォルダにありますか?
質問2:私のコードはなぜ異なる回答ですか?
ありがとうございます。
:)
編集:
申し訳ありませんが、言及するのを忘れてしまった、page2.phpは、PHPを使用してコンピュータで生成しました。
両方のファイルでセッションを開始していますか? –
@RossWilsonああ......。私はセッションを開始するためにコンピュータ生成のコードを編集するのを忘れていました。私はそのようなダンボールのように感じる。明白なことを指摘していただきありがとうございます... –