2011-05-06 42 views
0

我在我的網站上有一個編輯按鈕,用戶可以編輯他們寫的評論。它只出現在登錄用戶通過執行此項檢查完成的帖子上。檢查多個用戶名以顯示編輯權

if($rows['name']===$_SESSION['myusername'] 

我想允許管理員帳戶也能夠編輯任何帖子。我如何將admin的用戶帳戶添加到此?

在此先感謝!

+0

您能否給我們提供更多信息?例如,你如何知道管理員是誰? – Ikke 2011-05-06 09:50:43

+0

'if(($ rows ['a_name'] === $ _ SESSION ['myusername'])OR($ myusername === $ _ SESSION ['admin']))'似乎並不奏效。相反,它允許所有用戶編輯權限 – Mel 2011-05-06 10:18:21

回答

0

加入if聲明或條件來檢查當前用戶是否爲admin。

if($rows['name']===$_SESSION['myusername'] || $_SESSION['idAdmin']) {...} 
0

你應該確保每一個登錄檢查和用戶權限被傳遞到一個變量,例如:

$_user['loggedin'] = false; 
if(isset($_SESSION['myusername']) && isset($_SESSION['mypassword'])) { 
    $q = mysql_query("SELECT * FROM users WHERE username = '".mysql_real_escape_string($_SESSION['myusername'])."' AND password = '".mysql_real_escape_string($_SESSION['mypassword'])."'"); 

    if(mysql_num_rows($q) == 1) { 
    $_user = mysql_fetch_assoc($q); 
    $_user['loggedin'] = true; 
    } 
} 

現在,假設你有一個字段「is_admin」你的數據庫,你可以在您的支票中使用這段代碼:

if($rows['name'] == $_SESSION['myusername'] OR ($_user['loggedin'] && $_user['is_admin'])) { // perform action }