各ページをロードする前にセッションを開始し、ユーザーがログインしているかどうかを確認する PHP ログイン システムを構築しました。
私の保護されたページには、上部にセッションを開始するインクルードと、ページをロードするかどうかに関する if ステートメントがあります。そして、一番下には、ログインページにリダイレクトするelseステートメントである別のインクルードがあります。これは直接ページにある場合は正常に機能しますが、他の場所から含めると次のエラーが発生します: 解析エラー: 構文エラー、予期しない $end
これがコードです
含む 1:
<?php
session_start();
if ($_SESSION['username'])
{
?>
これは、セッションが存在する場合に読み込まれる保護されたコンテンツです
2 を含める:
<?php
}
else
header ("location: index.php");
?>
これは、ステートメントの中括弧を 2 つの PHP タグに分割したことが原因であると考えられます。これを行った理由は、if ステートメントが true の場合にページ全体をロードするためであり、PHP に残して各行をエコーするのではありません。 HTMLセパレート。
どうすればこれを解決できますか? または、IF/ELSE ステートメントを分割するより良い方法はありますか。
ありがとうダニー