[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Trennzeichen bei Userrechten - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Benutzeravatar
Koala
Beiträge: 1612
Registriert: 3. Okt 2005, 13:20

Trennzeichen bei Userrechten

19. Mär 2006, 12:10

Seit dem 16.3. wird für die Trennung der Userrechte in der DB-Tabelle rex_user als Trennzeichen das # verwendet. Wer ein CVS-Update der Datei redaxo/include/pages/user.inc.php vornimmt, muss danach per Hand das neue Trennzeichen in der DB ändern, weil sonst keine Rechte erkannt werden und damit kein Inhalt geladen wird. Die Adminseite bleibt quasi leer.
Tabelle rex_user, Spalte rights
Beispieleintrag:

Code: Alles auswählen

#admin[]#csw[0]#media[0]#addon[]#specials[]#
Das muss nur einmalig für den Admin geschehen.
Dann können die Änderungen für jeden weiteren Benutzer über die Benutzerverwaltung vorgenommen werden. Allerdings ist zu bedenken, dass die bestehenden Rechte nicht erkannt werden und deshalb neu vergeben werden müssen.
Oder man passt das für alle Benutzer ebenfalls direkt in der DB-Tabelle an, dann sparrt man sich die neue Rechtevergabe.
<?php print $Footer; ?>

Sven

Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!


REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung

Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)

Benutzeravatar
holger
Beiträge: 403
Registriert: 21. Jun 2005, 13:21
Wohnort: Sehnde / Hannover / lower saxony
Kontaktdaten: Website

19. Mär 2006, 13:08

Hallo Sven,

ein etwas einfacherer Weg ist in der master.inc.php den Schalter $REX['SETUP'] auf true zu setzen. Dann einfach das setup wiederholen. Natürlich darauf achten, das man keine neue Datenbank installiert. am Ende des Setup einen neuen User kreieren. Mit dem kann man sich dann einloggen.

Ich versteh' nur gerade nicht, warum man sowas überhaupt ändern muss ?
Das wird ja bei einem Update von 3.1 auf 3.2 ziemlich viel Ärger machen.

mfg
Holger
// Wenn die Theorie von der Praxis abweicht: --> Ändere die Theorie //

CHRONO.net Media Works
In der Wörth 11
31319 Sehnde
+495138614810 tel
+495138615553 fax
info@chrono.net

Benutzeravatar
Koala
Beiträge: 1612
Registriert: 3. Okt 2005, 13:20

19. Mär 2006, 13:26

holger hat geschrieben:Das wird ja bei einem Update von 3.1 auf 3.2 ziemlich viel Ärger machen.
Für den Fall müsste wohl noch eine eigene Update-Funktion geschaffen werden, weil wie schon erwähnt, die alten Benutzerrechte nicht erkannt werden und wieder neu vergeben werden müssten.
<?php print $Footer; ?>

Sven

Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!


REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung

Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

20. Mär 2006, 09:11

Hej Holger,
holger hat geschrieben:Das wird ja bei einem Update von 3.1 auf 3.2 ziemlich viel Ärger machen.
bei einem Update solltest du folgendermaßen vorgehen.

Aus der "alten" Version ein Export sichern. Dann die neue Version installieren und dort das Export einspielen.

Die rex_user wird bei einem Export nicht in die sql-Datei gespeichert und sollte somit auch bei den Rechten kein Problem entstehen.

Ein einfaches Drüberkopieren der neuen Version über die alte Version würde ich nicht empfehlen. Immer das neue Release separat installieren.

vg Thomas

Benutzeravatar
Koala
Beiträge: 1612
Registriert: 3. Okt 2005, 13:20

25. Mär 2006, 18:04

Um sich mühsames Updaten der User-Rechte z.B. mittels phpMyAdmin zu ersparen, kann man das auch mittels einer einfachen MySQL-Anweisung erledigen:

Code: Alles auswählen

UPDATE `rex_user` SET `rights` = CONCAT('#', replace(`rights`,']',']#')) WHERE `rights` NOT REGEXP '#'
<?php print $Footer; ?>

Sven

Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!


REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung

Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)

Zurück zu „Sonstiges“