zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden PHP OOP: Datenbankeintrag Klasse - ein paar theoretische Überlegungen

Antwort
 
LinkBack Themen-Optionen Ansicht
  #11 (permalink)  
Alt 23.07.2009, 19:34
Benutzerbild von David
auch, ja!
XHTMLforum-Kenner
 
Registriert seit: 08.11.2007
Beiträge: 2.626
David ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer Anblick
Standard

@mantiz: Welchen Sinn haben die Namespaces in dieser Reihe? Stellen diese mehrere verwendete Datenbanken dar?
__________________
github | http://dnaber.de
Mit Zitat antworten
Sponsored Links
  #12 (permalink)  
Alt 23.07.2009, 20:06
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.845
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Namespaces haben einfach gruppierenden Charakter.
Verschiedene Entwickler können verschiedene Namespaces verwenden, um sich nicht in die Quere zu kommen.

Da das ganze für ein CMS ist, und ich wahrscheinlich unterschiedliche Module/Plugins/Tabellen für verschiedene Kunden benötige, kann ich so z.B. einen Namespace pro Kunden anlegen und die Dinge dort sauber kapseln.

Endgültig ist die Struktur aber noch nicht, da muss ich mir demnächst nochmal die Birne machen, jetzt muss ich mich aber erstmal um Uni und meine Template-Klasse kümmern, welche nun eine TagLib-Unterstützung erhalten soll, danach geht's dann weiter mit dem CMS.
Mit Zitat antworten
Sponsored Links
  #13 (permalink)  
Alt 23.07.2009, 21:24
Benutzerbild von David
auch, ja!
XHTMLforum-Kenner
 
Registriert seit: 08.11.2007
Beiträge: 2.626
David ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer Anblick
Standard

D.h. du lässt pro Namespace den Zugriff nur auf bestimmte Tabellen in der DB zu?
__________________
github | http://dnaber.de
Mit Zitat antworten
  #14 (permalink)  
Alt 23.07.2009, 21:30
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.845
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Grundsätzlich kann jedes Modul auf jede Tabelle zugreifen, jedoch können Zugriffsrechte auf Tabellen und/oder ganze Namespaces vergeben werden, oder was meinst Du?

Worauf willst Du hinaus?

// Edit:
Wenn es die Tabelle A im Namespace A gibt, dann kann man von Namespace B natürlich auch auf die Tabelle A im Namespace A zugreifen, falls Du das meinst.
Also innerhalb (eines Modules beispielsweise) des Namespace B kann ich via getTable('/A/A') darauf zugreifen.

War's das, was Du gemeint hast?

Geändert von mantiz (23.07.2009 um 21:33 Uhr)
Mit Zitat antworten
  #15 (permalink)  
Alt 23.07.2009, 23:47
Benutzerbild von David
auch, ja!
XHTMLforum-Kenner
 
Registriert seit: 08.11.2007
Beiträge: 2.626
David ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer Anblick
Standard

Mein Horizont im bereich Datenmodel reicht gerade mal von ER-Modellen bis hin zu dessen Umsetzung in einer Relationalen DB - die ja im Prinzip eine Sammlung von Tabellen ist. Ich bekomm da die Namespaces nich eingeordnet.

Um mal in deinem Beispiel zu sprechen:
PHP-Code:
$globalNamespace->getNamespace('Core')->getTable('Artikel')->listRecords(...);
//bzw. 
$globalNamespace->getNamespace('Coat')->getTable('Artikel')->listRecords(...); 
Beide Befehle müssten ja zum selben Ergebniss führen, wenn "Artikel" eine Tabelle in der Datenbank ist und listRecords() alle Datensätze zurück gibt.
__________________
github | http://dnaber.de
Mit Zitat antworten
  #16 (permalink)  
Alt 24.07.2009, 00:23
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.845
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Ach, so meinst Du das.

Nee, das sind bei mir 2 verschiedene Tabellen, und zwar werden die Tabellen durch die Klassen auf die realen Tabellen "Core_Artikel" bzw. "Coat_Artikel" gemapt, d.h. die Queries, die ja ebenfalls automatisch generiert werden, beziehen sich auf 2 verschiedene Tabellen.

An sich ist das ganze eine völlig normale relationale Datenbank, mysql halt.

Dann habe ich mir ein paar Klassen geschrieben, um den Zugriff auf die Tabellen objektorientiert zu gestalten und die Queries halt nicht direkt angeben zu müssen, sondern z.B. via "listRecords", oder "updateRecord", etc.

Wenn der Zugriff auf die Tabellen aber dann so gekapselt ist, habe ich mir weiter überlegt kann man eine Instanz "höher" ansetzen und Namespaces einführen, diese sind im Prinzip nur virtuell und durch die Objekte realisiert, die Tabellen an sich sind flach, wie man es kennt, lediglich die Benennung der Tabellen lässt die Zuordnung zu Namespaces erkennen.
Mit Zitat antworten
  #17 (permalink)  
Alt 24.07.2009, 01:21
Benutzerbild von David
auch, ja!
XHTMLforum-Kenner
 
Registriert seit: 08.11.2007
Beiträge: 2.626
David ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer AnblickDavid ist ein wunderbarer Anblick
Standard

Jetzt wirds. Die Namespaces sind ganz simpel ausgedrückt also eine Gruppierung einzelner Teile deines Datenmodels.
__________________
github | http://dnaber.de
Mit Zitat antworten
  #18 (permalink)  
Alt 24.07.2009, 07:29
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.845
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Jop.
Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP, OOP und Array Übergabe laborix Serveradministration und serverseitige Scripte 35 22.12.2010 13:38
wo ist OOP für php sinnvoll? sqrack Serveradministration und serverseitige Scripte 5 12.09.2010 17:23
OOP mit PHP lernen Praktikant Ressourcen 28 05.10.2008 23:07
Dateien auslagern - Include und PHP ArcVieh Serveradministration und serverseitige Scripte 17 27.03.2008 19:09
Text innerhalb von PHP eine Klasse zuweisen lindstrom CSS 4 06.11.2006 11:34


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:43 Uhr.