Code: Alles auswählen
$allowed_u = array();
$allowed_u[] = 'g2';
$allowed_u[] = 'g10';
$allowed_u[] = 'g20';
$access_allowed = false;
$sql = "SELECT group_id
FROM " . phpbb_user_group .
" WHERE user_id = '" . $userdata['user_id'] . "'";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not get user group.', '', __LINE__, __FILE__, $sql);
}
print($result);
$access_allowed = false;
while( $group_id = $db->sql_fetchrow($result) )
{
//print(count($group_id));
//print($group_id[0]);
//print($group_id[1]);
//print($group_id[2]);
print($userdata['user_id']);
if( in_array('g' . $group_id,$allowed_u ))
{
$access_allowed = true;
break;
}
}
exit();
if( !$access_allowed )
{
message_die(GENERAL_MESSAGE, $lang['Not_Authorised'] );
}//
// End session management
//
eingefügt. Nun sollte er mir eigentlich die Gruppen des Users geben und mit den erlaubten Gruppen vergleichen.
Zum Test habe ich ein paar prints eingebaut. Aber leider ist count($group_id) immer 1 und $group_id[0] immer leer. Es werden also nicht die Gruppen ausgegeben. Funktionieren tut die Abfrage schon, denn wenn ich sie in PHPMyAdmin ausführe bekomme ich das richtige Ergebnis.
Kann mir einer verraten was hier falsch läuft und warum ich keine Gruppen zurück bekomme?
Gruß, Saber_Rider