2014-05-19 118 views
1

數據庫中的每個用戶都分配了一個級別,他們是一個級別表,每個級別都有權限,例如登錄時的「view-clients」,用戶的級別變爲$ _SESSION ['level ']我需要做一個if語句,如果用戶的級別「view-clients」被「檢查」,它將回顯代碼。PHP MYSQL if field equal checked echo

這是代碼有,但即使檢查它也不會回顯它。

<?php 
$level = mysql_real_escape_string($_SESSION['level']); 
include("include/config.php"); 
$con=mysql_connect($db_host,$db_uname,$db_pwd,$db_name); 
mysql_select_db($db_name); 
$query = "SELECT * FROM levels WHERE name='$level'"; 

      $result=mysql_query($query); 
      while($rows = mysql_fetch_array($result)){ 
       $a1=$rows['0']; 
       $a2=$rows['1']; 
       $a3=$rows['2']; 
       $a4=$rows['3']; 
       $a5=$rows['4']; 
       $a6=$rows['5']; 
       $a7=$rows['6']; 
       $a8=$rows['7']; 


if ($a5=="checked") { 

echo "Clients"; 

    } 

} 

?> 

我已經嘗試了一些東西,如不使用變量作爲會話。 我很感激任何幫助。

+0

所以'name'是'levels'獨特之處?你嘗試過var_dump($ row [5]);'在循環內部看看你是否得到了任何東西? – kero

+0

我想這是我會出錯的地方,它不輸出任何東西。我有三重檢查了一切,它拼寫正確嗎? – James

回答

0

我猜你忘了開始會話。

嘗試

<?php 
    session_start(); 
    $level = mysql_real_escape_string($_SESSION['level']); 
    .... 

您的查詢將找不到,雖然沒有定義$level結果。

也chanage這個

mysql_fetch_array 

mysql_fetch_row 

here愨之差獲取一行,獲取陣列,並獲取assoc命令

+0

我做了以下更改並沒有影響它,謝謝 – James

+0

你geting?你能打開顯示錯誤嗎? –

+0

它不顯示任何 – James