2017-04-14 8 views
0

現在、user_levelに基づいてコントロールパネルを構築しています。ユーザーがレベル(0)を持つ場合、ユーザーはインデックスページ以外のものにアクセスできません。レベル(1)はすべてにアクセスできます。php/mysql - user_levelに基づいてリダイレクトする際の問題

私の問題は、私が使用しています現在のコードで...それだけで私は0

コードの上に私のUSER_LEVELを設定した場合でも、インデックスページに戻って私をリダイレクトし、次のとおりです。

<?php 
$db_connection = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME); 
require_once("config/db.php"); 

$page_rows = results_per_page; 

if (!$db_connection->set_charset("utf8")) { 
    $db_connection->errors[] = $db_connection->error; 
} 

if($_SESSION["user_level"] == 0) 
       { 
       header('Location: index.php'); 
       } 
?> 

私は....

<?php 
$db_connection = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME); 
require_once("config/db.php"); 

$page_rows = results_per_page; 

if (!$db_connection->set_charset("utf8")) { 
    $db_connection->errors[] = $db_connection->error; 
} 

if($_SESSION["user_level"] == 0) { 
     header('Location: index.php'); 
    } else { 
     header('Location: download.php'); 
?> 

を次のコードを使用してみた場合、私はdownload.phpページにHTTPエラー500を取得します。

すべてのご協力をいただきありがとうございます。 (「Noob」の間違いがあれば申し訳ありませんが、これは私の最初の大きなプロジェクトです)。あなたが好きなsessionを使用している

+0

は、 'session_start();'を最初の行に、 'exit;'をヘッダの後に使用します。 – C2486

+0

print_r($ _ SESSION)を実行すると、セッションで何が値であるかを確認できます。セッションをチェックしていますが、セッション値の設定方法については説明していません。 – Amit

+0

はまだそれを続けています:/ – Jixy

答えて

0

if($_SESSION["user_level"] == 0) 
{ 
    header('Location: index.php'); 
} 

が、セッションはここでは開始されません。最初の行でセッションを開始します。

session_start(); 

その後、セッション変数にアクセスできます。

+0

「session_start();」を追加しようとしました。最初の行で、しかしそれはまだ同じ問題を与える。 – Jixy

関連する問題