2015-03-31 41 views
-1

我對PHP中這種類型的東西並不十分熟悉,但它不太適用。在我分享代碼和問題之前,讓我告訴你我的目標是什麼。我的目標是在數據庫中進行ENUM選擇,值爲'1','2','3',1是普通用戶,2是主持人,3是管理員。PHP中的權限級別與枚舉不起作用

下面是代碼:

$checkpermission = mysql_query("SELECT permission FROM users "); 
$checkpermnrows = mysql_num_rows($checkpermission); 

if ($checkpermnrows != 0) { 
    if ($checkpermission == 2) { 
     echo "User Group: Moderator"; 
    } else { 
     echo "User Group: User"; 
    } 
} else { 
    echo "Rows not found"; 
} 

,如果有人也可以訓斥我如何設置會話這種類型的東西,我敢肯定,這將是更好的... ...

+1

這是不是一個好主意,使用數值爲'ENUM'。 MySQL手冊解釋了原因。 – Barmar 2015-03-31 02:29:16

+0

使用'ENUM'的通常點是將該值存儲爲一個小整數,但使用輸入/輸出到數據庫的名稱。 – Barmar 2015-03-31 02:30:20

+0

@Barmar然後什麼是好的選擇? – deconv 2015-03-31 02:30:32

回答

0

假設登錄的用戶ID在$user,你會這樣做:

$checkpermission = mysql_query("SELECT permission FROM users WHERE id = $user"); 
$row = mysql_fetch_assoc($checkpermission); 
if ($row) { 
    $permission = $row['permission']; 
    if ($permission == 'moderator') { 
     echo 'User Group: Moderator'; 
    } else { 
     echo 'User Group: Users'; 
    } 
} else { 
    echo "Rows not found"; 
} 
+0

這工作完美無瑕!非常感謝! – deconv 2015-03-31 04:02:43

+0

這是你應該能夠從任何PHP + MySQL教程中獲得的基本東西。我感到內疚,把它作爲答案。 – Barmar 2015-03-31 04:04:47

+0

我會去教程和學習完全相同的東西,而不僅僅是告訴我它會有什麼不同? – deconv 2015-04-03 00:20:45