2010-01-16 5 views
0

사용자 이름이 관리자 인 경우에만 관리 옵션을 표시하려는 사이드 메뉴가 있습니다. 간단히 말해 관리자 인 경우 단순히 프로필에 다른 링크를 표시합니다.관리자에게 필터링 액세스

키스 (Keep It Super Simple) ... 제발 멍청한 놈입니다.

감사

답변

1

데이터베이스 '사용자'테이블 열 'is_admin'에 추가하고 사용자

값을 얻기 위해 그것을 설정하고 할 검사로 사용할 것 sth like :

if(isadmin($user)) 
{ 
    echo "your admin bar"; 
} 
0

먼저 가서 해당 사용자 이름과 어떤 레코드가 있는지 확인하기 위해 쿼리를 수행하고 관리자 필드에 확인. 있을 경우 해당 사용자 이름은 관리자입니다. 그러나 동일한 사용자 이름을 가진 여러 사용자가있는 경우에는 작동하지 않으므로 대신 사용자 ID를 사용할 수 있습니다.

function check_admin($username) 
{ 
    // Look for a person with that username, and the admin field is set to ON 
    $sql = 'SELECT * FROM TABLE WHERE User_Name="'.$username.'" AND Admin=1'; 
    $result = mysql_query($sql); 
    // If there are any results, the person should be an admin (given usernames are unique) 
    if(mysql_num_rows($result) !== 0) 
    { 
     return true; 
    } 
    else 
    { 
     return false; 
    } 
} 

은 그럼 그냥

if(check_admin("bob") == true) 
{ 
    // super secret admin stuff 
} 
+0

좋아요, 간단한 if/else 문입니다. 잠시 동안 그것을 확장합시다. 관리자는 사용자 데이터베이스 설정의 Y/N 필드입니다. $ 사용자 이름이 admin 필드의 admin 인 지 먼저 확인해야합니다. if/else ... right? –

0

사용자가 연결되면 세션 변수에 boolean을 저장하여 사용자가 n 관리자. 그럼 당신은 그것을 검색 할 수 있습니다

if($_SESSION['admin']) 
    echo 'The admin link'; 
else 
    echo 'The profile link'; 

세션 변수를 사용하는 방법을 알고 the php manual를 참조하십시오.

관련 문제