ユーザーがアクセスするメイン ページがあり、渡された変数に応じて MySQL クエリからの出力が表示されます。そう;
http://website/mypage.php?page=0
ただし、リダイレクトを設定して、誰かが
http://website/mypage.php
に行くことhttp://website/mypage.php?page=0
。現在のページを検証し、ユーザーのセッションが確立されていることを検証する次のコードを使用することを考えました。
elseif ($_SERVER['PHP_SELF'] == '/mypage.php' && isset($_SESSION['valid_user']))
{
header('Refresh: 0; URL=/mypage.php?page=0');
}
しかし、これは一般的すぎるようです。「/mypage.php」または「/mypage.php?page=」を正確に確認する方法はありますか? /mypage.php の 11 文字だけをチェックするために strlen を使用することを考えましたが、これが最も効率的な方法かどうかはわかりません。