php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.07.2006, 22:52  
Benutzer
 
Registriert seit: 13.07.2005
Beiträge: 69
madhatter
Standard php Entwurfsmuster (DAO)

hallo leute.
ich sitze momentan an einem kleinem projekt von mir und kriege langsam nen dicken kopf.

irgendwie finde ich irgendwie keine lösung für mein problem.

ich habe eine klasse user.class.php. mit dieser klasse kann man instanzen der user bauen. in der klasse habe ich set und get methoden für die privaten attribute. alles in allem ist es so ziemlich alleswas ich brauche.

nun baue ich die objekte auf der basis der daten aus einer db. dazu habe ich mir eine DAOKlasse gebaut.

mit meiner user.php greife ich auf die DAOKlasse - die greift auf die user.class.php und baut die objekte entsprechend der daten aus der db. danach wir das ganze in der user db an ein smarty-template zur ausgabe übergeben.

alles in allem klappt es nun ganz gut.

leider scheine ich aber irgendetwas nicht richtig kapiert zu haben. besonders viele probleme habe ich bei der verwendung eines DAO-Entwurfmusters für die speicherung von veränderungen n den objekten. dies liegt aber sicherlich daran, dass ich bis jetzt noch nicht ein mal ein wirklich gutes beispiel für die verwendung des entwurfmusters gefunden habe.

wie funktioniert es nun. wenn ich ein formular habe mit dem ich daten für einen user eintippe - wie läuft es nun weiter? erstelle ich erstmal ein objekt und speichere es dann über ne methode der DAOKlasse in der DB? da kann ich aber auch gleich ein array übergeben - ist noch einfacher.

irgendwo dazwischen steckt mein denkfehler und ich komme nicht weiter.

das gleiche problem habe ich beim ändern der objekte - die änderungen müssen ja gespeichert werden.

nun will ich was ändern - dazu schaue ich in die db - erstelle erstmal das objekt - verändere es und speichere es dann über die DAOKlasse? oder wie läuft das?

ein gutes tutorial oder ein gutes buch zu dem thema wäre auch schon ne hilfe.

vielen dank.
madhatter ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 17.07.2006, 23:25  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

Hi.

Also DAOs sind, so wie ich sie verstehe und einsetze in erster Linie sowas, wie einfache Schnittstellen zwischen Anwendung und Datenbank, die alle Queries enthalten und mit sprechenden Methoden mit einfachen Parametern angesprochen werden.

PHP-Code:
$this->PageDao->moveLeft($sPageId$sBrotherId);
$this->UserDao->update($sUserId$aUserData);

$aPageData $this->PageDao->getData($sPageId);
$aGroups $this->GroupDao->getAllGroups(); 
Ich nehm die Daten also auch als Array entgegen. Wäre sicherlich feiner, im Falle von SELECT-Queries ein Iterator-Objekt zurückzugeben.

Die DAOs haben also nichts mit irgendwelchen Business Objects zu tun. Sie abstrahieren nur die Anfragen an die Datenbank und geben ggf. die "Tabellen" zurück.

Was du da machst, hört sich für mich eher nach dem Active Record-Pattern an. Guck dir dass einfach mal an.

Basti
Basti ist offline   Mit Zitat antworten
Antwort


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
Suche nach Entwurfsmuster, ~singleton + x Zergling-new PHP-Fortgeschrittene 22 17.08.2007 18:05
Entwurfsmuster: Wrapper Klasse Zergling-new PHP-Fortgeschrittene 24 11.03.2006 03:14

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php dao, dao php, php entwurfsmuster, entwurfsmuster php, php data access object, php dao beispiel, data access object php, dao entwurfsmuster, dao in php, php dao db, entwurfsmuster dao, data access objects php, design pattern dao, php class dao, dao php5 tutorial, php dao business object, php design pattern, php datenbank dao, data access object, design pattern php

Alle Zeitangaben in WEZ +1. Es ist jetzt 09:43 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.