Benutzerverwaltung zerschossen

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
jaleh
Posts: 3
Joined: Fri Apr 06, 2007 12:58 pm

Benutzerverwaltung zerschossen

Post by jaleh »

Hallo,

nachdem ich in letzter Zeit öfter Probleme hatte, mich in meinem Blog einzuloggen, habe ich heute mal in die Benutzerverwaltung geschaut. Dort wurden mir aber nicht meine Benutzer aufgelistet, sondern es kam die Fehlermeldung:

Warning: Invalid argument supplied for foreach() in [...]/include/admin/users.inc.php on line 188

Als ich danach googelte, fand ich bei Euch den Hinweis, Firefox könnte möglicherweise irgendwas gelöscht haben und man solle in der DB in den Autoren- und Gruppentabellen nachsehen. Tatsächlich ist in den _authorgroups überhaupt nur einer meiner Benutzer aufgelistet und zwar der Admin, mit dem ich mich nicht einloggen kann. Der User, mit dem ich mich einloggen kann, steht dort gar nicht (Chefredakteur).

Ich habe dann einen neuen Benutzer angelegt, in der Hoffnung, dem später in der DB Adminrechte zuweisen zu können, aber beim Anlegen erscheint in der Benutzerverwaltung folgende Fehlermeldung:

"Warnung: Sie haben keine Gruppenmitgliedschaften angegeben. Dies würde Sie effektiv aus der Blogverwaltung ausschließen. Daher wurden die Gruppenzugehörigkeiten nicht geändert.
Warning: Invalid argument supplied for foreach() in [...]/include/admin/users.inc.php on line 188"

Ich habe aber eine Gruppenmitgliedschaft angegeben... Die neu angelegten Benutzer finde ich aber trotzdem nicht in der _authorgroups.

Woran könnte das liegen? Ich habe Serendipity 1.1.2 und möglicherweise ist das Problem nach dem letzten Update aufgetreten, vielleicht war es aber auch schon vorher vorhanden.

Viele Grüße aus Köln
Petra
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Benutzerverwaltung zerschossen

Post by garvinhicking »

Hi!

Kannst Du einen Screenshot liefern von der ausgefüllten Seite wo Du versuchst einen neuen Benutzer anzulegen?

Es klingt danach als würde dein Browser als Mehrfach-Auswahlfeld der Gruppenmitgliedschaften nicht korrekt übermitteln würde. Hast Du mal einen anderen Browser ausprobiert?

In der Datenbank muss folgendes sein:

1. Ein Benutzer muss in serendipity_authors eingetragen sein.

2. Alle vorhandenen Gruppen müssen in serendipity_groups eingetragen sein.

3. Zu jeder Gruppen-ID von serendipity_groups muss es in der Tabelle serendipity_groupconfig einen Eintrag geben der alle Rechte der Gruppe definiertn.

4. Die Zuweisungen von Benutzern zu Gruppen wird in der serendipity_authorgroups gespeichert. Da wird einfach jeweils eine Gruppen-ID plus Autoren-ID eingetragen, um zuzuordnen welcher Gruppe ein Autor alles angehört.

Beispiel:

1. Du hast den User "admin" mit der ID #1 in Tabelle serendipity_authors.

2. Du hast die Gruppe "Chefredakteur" ("USERLEVEL_CHIEF") als ID #2 in der Tabelle serendipity_groups.

3. Für die Gruppe #2 gibt es in serendipity_groupconfig jede Menge Einträge.

4. In der serendipity_authorgroups gibt es einen Eintrag mit Autor-ID #1 und gruppenid #2.

Viele GRüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
jaleh
Posts: 3
Joined: Fri Apr 06, 2007 12:58 pm

Re: Benutzerverwaltung zerschossen

Post by jaleh »

Hallo Garvin, ich hoffe, Du hattest schöne Ostern. :-)
garvinhicking wrote: Kannst Du einen Screenshot liefern von der ausgefüllten Seite wo Du versuchst einen neuen Benutzer anzulegen?
Also: so sieht die Benutzerverwaltung aus, wenn ich sie aufrufe:
Image

So sieht der neu-angelegte Account vor dem Speichern aus:
Image

Und so sieht die Meldung nach dem Speichern aus:
Image
Es klingt danach als würde dein Browser als Mehrfach-Auswahlfeld der Gruppenmitgliedschaften nicht korrekt übermitteln würde. Hast Du mal einen anderen Browser ausprobiert?
Ja. Ich benutze Firefox 1.5 unter Linux und habe es auch mit Opera ausprobiert.
In der Datenbank muss folgendes sein:
1. Ein Benutzer muss in serendipity_authors eingetragen sein.
Da sind sie alle drin.
2. Alle vorhandenen Gruppen müssen in serendipity_groups eingetragen sein.
Da sind drei drin, ich glaube, die sind bei Serendipity standardmäßig dabei: Admin, Chefredakteur und Redakteur.
3. Zu jeder Gruppen-ID von serendipity_groups muss es in der Tabelle serendipity_groupconfig einen Eintrag geben der alle Rechte der Gruppe definiertn.
Äh, da ist ein Haufen Zeug drin, der sich mir nicht erschließt. Aber tatsächlich gibt es Einträge für 3 IDs (jeweils ca. 30 Einträge pro ID).
4. Die Zuweisungen von Benutzern zu Gruppen wird in der serendipity_authorgroups gespeichert. Da wird einfach jeweils eine Gruppen-ID plus Autoren-ID eingetragen, um zuzuordnen welcher Gruppe ein Autor alles angehört.
Ja, und da stimmt was gar nicht. Da habe ich nur _einen_ Datensatz drin, nämlich groupid 3 authorid 1. Und das ist der Admin-Account. Der, mit dem ich mich aber immer einlogge und die Testaccounts anlege, ist Chefredakteur (groupid 2, glaube ich) und ist authorid 2. Als ich den anlegte, funktionierte noch alles tadellos (übrigens auch mit Firefox). Alle seither neu-angelegten Accounts stehen auch nicht drin.

Hast Du eine Idee, warum das so ist? Und vor allem, was ich dagegen tun kann?

Viele Grüße aus Köln nach Köln
Petra
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Benutzerverwaltung zerschossen

Post by garvinhicking »

Hi!

Es kann sein dass dadurch dass deinem chef-redakteur eine gruppenzugehörigkeit fehlt, dieser neue redakteure nicht korrekt anlegen kann.

Füge mal manuell in der Datenank serendipity_authorgroups deine (2,2) ein und schaue ob du danach wieder redakteure sehen und anlegen kannst.

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
jaleh
Posts: 3
Joined: Fri Apr 06, 2007 12:58 pm

Post by jaleh »

Leider ändert das gar nichts. Die gleiche Fehlermeldung beim Aufrufen der Benutzerverwaltung (Warning: Invalid argument supplied for foreach() in [...]/www/include/admin/users.inc.php on line 188) , die gleiche Meldung beim Anlegen eines Users und nachher steht er auch nicht in der authorgroups...

Hast du sonst noch eine Idee?

Viele Grüße
Petra
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

Ich hätte da noch ein paar Ideen, bei denen ich dir aber einige änderungen am sourcecode zuwerfen müsste, jeweils auf dein feedback warten und dann weiter verändern. Das können wir so machen, aber ich kann dir auch anbieten das problem direkt zu beheben wenn du mir temporären FTP-Zugriff geben magst?

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Post Reply