ユーザーがログインしているかどうかを確認し、そのページに到達できない場合はどうすればよいですか?ユーザーがログインしているかどうかを確認してページにアクセスできないようにする
このコードは、それが完全かつ安全にするために何が必要ない:
if (isset($_SESSION['USER_ID']))
ユーザーがログインしているかどうかを確認し、そのページに到達できない場合はどうすればよいですか?ユーザーがログインしているかどうかを確認してページにアクセスできないようにする
このコードは、それが完全かつ安全にするために何が必要ない:
if (isset($_SESSION['USER_ID']))
キルスクリプト
if (!isset($_SESSION['USER_ID']))
die();
またはフレンドリメッセージを印刷するには、ログインページにリダイレクトする、または任意のあなたが考えることです適切な応答。プレミアムコンテンツを表示する前にページを消去してください。
ログインページでは、あなたがLOGGEDINない場合は到達不能にしたいページでは
$_SESSION['user_id'] = $user['id'];
を追加し、トップ
include ("auth.php");
auth.php
<?php
session_start();
if(!$_SESSION['user_id']){
header("location:index.php"); //page you want to redirect
}
?>
に追加
これでauth.phpを追加できますあなたはログインしていない場合、到達不能にしたい任意のページ...あなたが任意のページ出力(でも、警告とエラー)を-before必要なすべての
まず中:
session_start();
だからあなたのコードが完全になります次のように:
session_start();
if (!isset($_SESSION['USER_ID'])) {
header ("Location: login.php");
die;
}
このコードは、ユーザーがログインするとリダイレクトされますが、ログインしていないときにリダイレクトする必要があります。 – John
'!isset($ _ SESSION ['USER_ID'])'は次のことを意味します:_NOT EXIST(OR DEFINED)USER_ID SESSION_ –
USER_IDは空白にすることはできなかった場合、あまりにもこれを確認した方がよい:
if (isset($_SESSION['USER_ID'] && $_SESSION['USER_ID'] != ''))
より複雑なログインチェックのための個人的な方法として、ユーザーがログインしてデータベースに保存して余分なセッションを入れたときにランダムトークンを生成する。次に、user_idセッション名とランダムセッションがデータベースチェックで一致しているかどうかを確認します。これにより、セッションおよびクッキー名でのあらゆる種類の不正行為が防止されます。
さらに優れています: 'if(!empty($ _ SESSION [ 'USER_ID']))あなたは思いませんか? empty()doc:[link](http://php.net/manual/en/function.empty.php) –
ありがとうございました。はい。 empty()は両方のチェックを一緒に行います。ブランクチェックを忘れないように強調しました。 –
このコードは、ユーザーがログインするとリダイレクトされますが、ログインしていないときはリダイレクトする必要があります。 – John