Variable mit Funktion verändern?? - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html) +--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html) +--- Thema: Variable mit Funktion verändern?? (/thread-6222.html) |
Variable mit Funktion verändern?? - Bimon - 22.06.2007 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: PHP-Code: $languages = $lang->get_languages(); RE: Variable mit Funktion verändern?? - Bimon - 23.06.2007 ...Die Variable zu verändern geht anscheinend doch Habs jetzt hin bekommen, mit einem Scriptteil, der schon funktionierte... //EDIT: Schade eigentlich, es funktioniert doch nicht so wie es soll PHP-Code: $additionalgroups = $mybb->user['additionalgroups']; Damit sollen die Sec. Groups, die nicht zu den Sprachen zählen "herausgefiltert" werden, sodass die nicht gelöscht werden, sondern nur die Sprachgruppen. Leider löscht er hiermit alle Benutzergruppen. Bitte helft mir.... RE: Variable mit Funktion verändern?? - Michael - 23.06.2007 Leider sehe ich auch keinen Fehler wenn ich mir den Code ansehe. Versuche mal Zeile für Zeile zu debuggen, d.h. zu gucken ob der Inhalt der Variablen stimmt, etc. RE: Variable mit Funktion verändern?? - Bimon - 23.06.2007 Scheint schonmal eine gute Analyse zu sein PHP-Code: <?php Das heißt, der Fehler geschieht beim ersten Mal unset(), aber warum??? Was der löschen soll ist doch mit $key eindeutig definiert!? /EDIT: Den ersten Fehler habe ich entdeckt: PHP-Code: if($langs = $title) PHP-Code: if($langs == $title) Sieht schonmal denke ich besser aus als vorher, allerdings wird nun nichts mehr gelöscht ^^Das auch, siehe: PHP-Code: $langs = Deutsch "Du" Dann vermute ich jetzt mal ganz stumpf, dass der key davon dann deutsch_du ist, das was ich haben will... Sorry konntet ihr nicht wissen wie ich meine Usergroups genannt habe... RE: Variable mit Funktion verändern?? - Bimon - 23.06.2007 Ok, dank dir für diesen wunderbaren Analyse Tipp Nun funktioniert soweit alles, jetzt kommt komfort... |