Hallo,
ich glaube, ich habe ein Problem:
Ich möchte eine Variable via Funktion verändern.
Die Funktion berichtigt u.a. Fehler in den additionalgroups. Der Datenbank-Update funktioniert inzwischen wunderbar.
...Wenn ich die Standartsprache des Forums verändere und ein Mitglied "Standarteinstellung", soll er in eine entsprechende Secondary Group einsortiert werden (Für jede Sprache gibt es eine Secondary Group).
Es gibt nur eine klitze kleine Sicherheitsverletzung:
Wenn das geändert wird, ist das Mitglied beim ersten Seitenaufruf noch in der vorherigen Sec. Group, da die Variable / Array / Object oder wie auch immer ja vor dem hook global_start definiert wird (!?). Entsprechend nützt eine Datenbankänderung für diesen Aufruf noch nichts.
Inzwischen habe ich es soweit, dass ich an die Variable $mybb->user['additionalgroups'] die neue Benutzergruppe anhängen kann. Löschen geht aber irgendwie nicht.
Um folgenden Code geht es:
ich glaube, ich habe ein Problem:
Ich möchte eine Variable via Funktion verändern.
Die Funktion berichtigt u.a. Fehler in den additionalgroups. Der Datenbank-Update funktioniert inzwischen wunderbar.
...Wenn ich die Standartsprache des Forums verändere und ein Mitglied "Standarteinstellung", soll er in eine entsprechende Secondary Group einsortiert werden (Für jede Sprache gibt es eine Secondary Group).
Es gibt nur eine klitze kleine Sicherheitsverletzung:
Wenn das geändert wird, ist das Mitglied beim ersten Seitenaufruf noch in der vorherigen Sec. Group, da die Variable / Array / Object oder wie auch immer ja vor dem hook global_start definiert wird (!?). Entsprechend nützt eine Datenbankänderung für diesen Aufruf noch nichts.
Inzwischen habe ich es soweit, dass ich an die Variable $mybb->user['additionalgroups'] die neue Benutzergruppe anhängen kann. Löschen geht aber irgendwie nicht.
Um folgenden Code geht es:
PHP-Code:
$languages = $lang->get_languages();
$listadd = array();
foreach($languages as $language)
{
$query = $db->query("SELECT gid FROM ".TABLE_PREFIX."usergroups WHERE title = '$language' LIMIT 1");
$row = $db->fetch_array($query);
$addug = explode(",",$mybb->user['additionalgroups']);
$listadd[] .= array_keys($addug, $row['gid']);
}
foreach($listadd as $listaddg)
{
unset($addug[$listaddg]);
}
$mybb->user['additionalgroups'] = implode(",", $addug).",".$rowgid;