php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 09.07.2007, 02:25  
Erfahrener Benutzer
 
Registriert seit: 16.02.2006
Beiträge: 303
tinchen
Standard Struktur im Newssystem

Hallo ihr,

ich arbeite gerade an einem Newsverwaltungssystem und möchte gerne
einige Dinge umsetzen, bei denen ich mir noch nicht sicher bin, wie ich
das handhabe.

Zunächst habe ich eine Struktur geschaffen, die die News in unterschiedliche
"folder" gliedert. Soweit so gut. Nun möchte ich gerne den Nutzern verschiede
Rechte zuteilen. Ich denke zunächst mal an lesen, eigene Texte bearbeiten,
alle Texte bearbeiten, Texte veröffentlichen. Hierbei ist mir noch nicht klar,
wie ich am besten eine Verknüpfung zwischen Usern, Foldern oder ggf. sogar
Inhalten einrichten kann. Gibt es da ggf. vergleichbare Modelle, die genau
so etwas machen?

Ich denke da in Gruppenbildung oder sollte man für jeden User einzeln
festlegen, was dieser für Rechte innerhalb des Systems hat? Für die
jweiligen Kategorien, für die einzelnen News? Also es scheitert zunächst
mal nicht an der Umsetzung, sondern an Struktur.
tinchen ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 09.07.2007, 12:22  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Hallo,
du kannst dir dann noch zusätzlich Gedanken darüber machen, ob ein Benutzer auch Beiträge anderer Gruppen bearbeiten darf, anstatt nur den eigenen oder alle Beiträge verwalten zu dürfen.

Je nach Anzahl der Beitragsschreiber lohnt es sich, Gruppen zu erstellen. Ich würde mal sagen, wenn sowieso nur eine ausgewählte Anzahl an Menschen Rechte bekommt (< 10-15), würde ich auf Gruppen verzichten.

Mach doch einmal einen Vorschlag für MySQL-Tabellen, denn ansonsten hat sich dein Text ja schonmal gut angehört.
Zergling-new ist offline  
Alt 10.07.2007, 00:05  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo tinchen,

gibt es Anforderungen, dass einige Benutzer z.B. nur News schreiben, aber nicht veröffentlichen dürfen ist es an der Zeit unterschiedliche Rollen zusätzlich zu den Rechten einzuführen. Diese könnten dann sein:

- News-Redakteur (News lesen und schreiben in den Ordnern, auf die der Red. Rechte hat)
- News-Manager (onlinestellen/offlinestellen von News)
- ...

Rechte würde ich an dieser Stelle sowohl auf Ordner als auch auf Gruppen vergeben. MySQL-technisch zitiere ich das von mir üblicherweise eingesetzte teilnormalisierte Modell, in dem ein Objekt eine Tabelle repräsentiert und die Beziehungen (Rechte) über FK-Beziehungstabellen mit einander verknüpft sind. Damit lässt sich mit zwei drei JOINs sehr schnell herausfinden, wer (Gruppen, Benutzer) auf was (News, Ordner) Rechte hat.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Alt 10.07.2007, 00:18  
Erfahrener Benutzer
 
Registriert seit: 16.02.2006
Beiträge: 303
tinchen
Standard

Ich denke derzeit so:
Vielleicht ist es gut, keine Gruppen im eigentlichen Sinne, sondern Gruppen in der Art
viewer, author, editor (own), editor (all), publisher zu erstellen. Die Gruppen lassen
sich nicht bearbeiten oder löschen.
Dabei erbt jeweils die nächste Gruppe die Rechte der vorherigen. Über "Plugins"
könnte ich mir weitere Hauptgruppen vorstellen, so könnte es so etwas gegen wie
commenter etc.
Zu diesen Hauptgruppen kann der User weitere Subgruppen anlegen, die sich auf
"Folder" oder gar auf einzelne Inhalte beziehen. Dann können die User
diesen
Gruppen zugeordnet werden. Dann habe ich ich eine 1 zu n Zuordnung, die ggf.
sogar öfter vorkommt. Ist das ratsam oder sollte man das lieber nicht machen?
Hier beginnt sozusagen mein Problem. Je nachdem wie ich anfange im Ende immer
in dieser inkonsequenten Zuordnung, die mich zunächst mal stutzen lässt, da es
schwierig, wenn sich diese Zuordnungen ggf. gegenseitig ausschließen. Irgendwie
scheint da der Wurm drin.

[Edit] Hatte den Text vom Dr. erst später gelesen. Rollen ist wohl das
richtige Wort. Ich stelle mir das so vor, dass ein User im Newssystem
gleichzeitig einen einzelnen Beitrag nicht sehen darf, einen ganzen
"Ordner" rekursiv bearbeiten aber nichts veröffentlichen darf und
wiederum in einen bestimmten Artikel in diesem Folder nicht bearbeiten
darf, auch wenn er der Autor des Beitrags ist. Wie gesagt, ich habe mir
das noch nicht aufgezeichnet, das hilft ja oft, aber das erste Gefühl, wenn
ich das so mache wie oben beschrieben, dann klingt das nicht normalisiert.
tinchen ist offline  
Alt 10.07.2007, 21:20  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo Tinchen,

du musst ganz klar zwischen Rollen und Rechten unterscheiden, sonst kommst du in Teufels Küche. "Sehen" hat immer was mit Rechten zu tun, "veröffentlichen darf" immer etwas mit einer Rolle. Um eine Aktion (z.B. Artikel bearbeiten und onlinestellen) ausführen zu können muss sichergestellt sein, dass der Benutzer über Benutzer- oder Gruppen-Rechte Schreib-Zugriff auf das Objekt hat und zusätzlich muss die Aktion (bearbeiten + online stellen) zertifiziert sein.

Wenn du zum Daten-Design noch Hilfe brauchst, sag Bescheid, dann mache ich dir ein Beispiel.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Macht diese Struktur Sinn? Ghosti Datenbanken 17 24.04.2008 08:24
Problem mit Newssystem zichy PHP Tipps 2008 5 20.03.2008 13:37
xslt struktur.. so nur mit php-unterstützung möglich? Crypi PHP Tipps 2008 8 17.03.2008 17:58
Newssystem PHP Tipps 2006 6 19.01.2006 22:15
DB Struktur? nsane Datenbanken 2 11.10.2005 10:50
Job für PHPler: Newssystem für meine Seite Beitragsarchiv 5 17.09.2005 16:17
Denkanstoß Newssystem mit Datumsangabe Matthiasnet PHP Tipps 2005-2 1 02.09.2005 23:18
Newssystem mit Rubrikenunterteilung PHP Tipps 2005-2 8 08.08.2005 20:41
Newssystem Ausgabe Datenbanken 10 29.07.2005 22:55
[Erledigt] IP Sperre für Kommentare in Newssystem über MYSQL PHP Tipps 2005 5 16.03.2005 01:13
2* gleiches newssystem auf server (kategorie fehler ?) PHP Tipps 2004 1 24.10.2004 18:46
Suche: Newssystem wo man Beiträge verschieben kann. scheibo Beitragsarchiv 0 17.10.2004 19:30
[Erledigt] Wichtige Frage zu einem Newssystem PHP Tipps 2004 3 13.09.2004 07:48
wer weiß wie man so ein struktur schreibt?? HTML, Usability und Barrierefreiheit 1 30.08.2004 10:50
Newssystem socke Datenbanken 11 15.08.2004 17:32

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
newssystem php, own php newssystem, forum beiträge mit news system verknüpft, php newssystem, tabellen für ein news system

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.