2016-06-01 18 views

答えて

0

キルスクリプト

if (!isset($_SESSION['USER_ID'])) 
    die(); 

またはフレンドリメッセージを印刷するには、ログインページにリダイレクトする、または任意のあなたが考えることです適切な応答。プレミアムコンテンツを表示する前にページを消去してください。

0

ログインページでは、あなたが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必要なすべての

+0

このコードは、ユーザーがログインするとリダイレクトされますが、ログインしていないときはリダイレクトする必要があります。 – John

0

まず中:

session_start(); 

だからあなたのコードが完全になります次のように:

session_start(); 

if (!isset($_SESSION['USER_ID'])) { 
    header ("Location: login.php"); 
    die; 
} 
+0

このコードは、ユーザーがログインするとリダイレクトされますが、ログインしていないときにリダイレクトする必要があります。 – John

+0

'!isset($ _ SESSION ['USER_ID'])'は次のことを意味します:_NOT EXIST(OR DEFINED)USER_ID SESSION_ –

0

USER_IDは空白にすることはできなかった場合、あまりにもこれを確認した方がよい:

if (isset($_SESSION['USER_ID'] && $_SESSION['USER_ID'] != '')) 

より複雑なログインチェックのための個人的な方法として、ユーザーがログインしてデータベースに保存して余分なセッションを入れたときにランダムトークンを生成する。次に、user_idセッション名とランダムセッションがデータベースチェックで一致しているかどうかを確認します。これにより、セッションおよびクッキー名でのあらゆる種類の不正行為が防止されます。

+1

さらに優れています: 'if(!empty($ _ SESSION [ 'USER_ID']))あなたは思いませんか? empty()doc:[link](http://php.net/manual/en/function.empty.php) –

+0

ありがとうございました。はい。 empty()は両方のチェックを一緒に行います。ブランクチェックを忘れないように強調しました。 –

関連する問題