| | | | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer Registriert seit: 17.03.2010
Beiträge: 1.833
PHP-Kenntnisse: Fortgeschritten ![]() ![]() | Hi, kleine Frage: warum nimmst Du nicht einfach PDO (http://de.php.net/PDO)? Schauste hier: http://www.phpro.org/tutorials/Intro...o-PHP-PDO.html mfg Wolf29
__________________ while (!asleep()) sheep++; Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen. |
| | |
| | ||
| Neuer Benutzer Registriert seit: 02.02.2012
Beiträge: 6
PHP-Kenntnisse: Anfänger ![]() | Korrekt! Zitat:
In dem Tutorial http://www.phpro.org/tutorials/Intro...o-PHP-PDO.html passieren ja allerlei Dinge nach "$dbh = new PDO". Welchem Objekt aber wann welche Variablen zugewiesen werden und wie diese verarbeitet werden [...]? Möglicherweise wird mit "PDO::FETCH_CLASS" etwas derartiges bewirkt. Ich merke schon, dass es für grundlegende Verständnisprobleme leider keine einfachen Antworten gibt. Ggf. versucht sich jemand nochmal an o.g. Fragen (1) - (3d) Danke und Gruß, magnetus | |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() | NEIN pdo "weist" du keine Daten aus der Datenbank zu .. du benutzt PDO, um über ein DatenbankObject auf die Datenbank zuzugreifen .. Das DatenbankObject ist im Grunde eine Kombination aus der "Datenbank-Instanz" der alten mysql-Erweiterung und gleichzeitig sind die nötigen Methode dazu gebündelt damit läuft der Zugriff üblicherweise nach folgendem Muster PHP-Code: siehe http://de2.php.net/manual/de/class.pdo.php und folgende Seiten im Handbuch
__________________ "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste |
| | |
| | |
| Neuer Benutzer Registriert seit: 02.02.2012
Beiträge: 6
PHP-Kenntnisse: Anfänger ![]() | Hallo eagle275, mein Problem war und ist nicht, die Daten aus einer Datenbank zu bekommen. Das mag mit PDO ganz fluffig laufen - glaube ich gerne. Bevor, nachdem oder während ich die Daten aus der Datenbank bekomme (ob nun per PDO, Schubkarre oder Osmose) mochte ich die Daten gerne meinen Klassen- bzw. Objektvariablen zuweisen, z.B. PHP-Code: Ist die Funktion, welche die Daten aus der Datenbank holt, eleganterweise (a) eine Methode der Klasse und weise ich den Klassen- bzw. Objektvariablen die Werte aus §result in dieser Methode zu oder (b) lasse ich die Funktion sequeziell ablaufen und hole mir die entsprechenden Inhalte aus $result für meine Klassen- bzw. Objektvariablen Immer unter der Voraussetzung, dass ich danach mit dem Objekt noch etwas anstellen möchte und dafür alle Variablen nach meinen Vorstellungen gefüllt sind... ... dafür ist doch ein aus einer Klasse abgeleitetes (konstruiertes) Objekt gut, oder hab ich hier ein noch viel grundsätzlicheres Problem Danke und Gruß, magnetus |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() | grundsätzlich hast du beide Möglichkeiten.... wenn man allerdings mal einen Blick auf professionelle PHP-Anwendungen wirft, dann läuft es dort fast immer nach dem Muster : Es gibt ein Datenbank-Objekt, das oft sogar als "Singleton" verwendet wird (sprich: das Objekt gibt es genau 1 mal während die Anwendung läuft) du hast eigene Objekte für deine häufig bearbeiteten Daten"Klassen" .. also der User ist eines , und weitere Objekte für die üblichen Anwendungsdaten. Jede dieser Klassen bekommt zum Beispiel im Constructor dieses Datenbank-Objekt zugewiesen und verfügt ihrerseits über Methoden, um einen betreffenden Datensatz aus der Datenbank zu lesen / zu ändern / zu schreiben.
__________________ "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() | Für einfach gestrickte Daten-Klassen kann PDO tatsächlich Daten direkt Objekten zuweisen, siehe die Parameter von PDOStatement::fetchObject. In der Praxis ist mir das bisher aber noch nie untergekommen. Sobald du z.B. mit JOIN verschiedene Tabellen gemeinsam abfragst, stößt du da schnell an deine Grenzen. Die von eagle beschriebene Methode in der die Objekte selber mit der Datenbank kommunizieren nennt sich "Active Record" und ist gerade bei einsteigerfreundlichen Frameworks weit verbreitet, mit dem Stichwort solltest du dementsprechend viele Informationen finden und das würde ich dir auch erstmal empfehlen. Im wirklich professionellen Bereich sind Datenbank und Domain Objects wie "Student" gar nicht mehr direkt verbunden und es gibt eine Zwischenschicht, die das "Befüllen" aber auch speichern, löschen usw. übernimmt. Wie genau diese umgesetzt ist, dafür gibt es wiederum verschiedene Entwurfsmuster aber das führt hier wahrscheinlich zu weit, ich will ja nicht dass du direkt das Handtuch wirfst sondern nur schonmal weißt dass das noch nicht der Weisheit letzter Schluss ist |
| | |
| | ||
| Neuer Benutzer Registriert seit: 02.02.2012
Beiträge: 6
PHP-Kenntnisse: Anfänger ![]() | Hallo nochmal, Vielen Dank für die Mühe beim Lösen der Knoten in meinem Kopf... ...wir kommen der Sachen aber näher. Zitat:
(1) das "Datenbank-Objekt" ist im Idealfall die PDO-Soße von oben, richtig? (1a) ich brauche also keine "eigenen" Attribute mehr in der Klasse?! (1b) bearbeiten die Methoden der Klasse dann die Attrbute des zugewiesenen "Datenbank-Objekts"? (1c) woher werden dann, z.B. beim ändern eines Datensatzes, die neuen Variablen an die Methode übergeben? - aus dem "Datenbank-Objekt"? (2) bedeutet "Singleton", dass dieses Objekt so ähnlich wie $_Session-Variablen überall verfügbar ist (z.b. beim Navigieren)? - wo finde ich dazu eine Erläuterung? (3) Ist das "Datenbank-Objekt" dann für für
Ich bin durchaus gewillt, The F***ing Manual zu lesen, wenn mir jemand die Kapitel nennt Danke und Gruß, magnetus | |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Checkboxes nach editieren wieder in die Datenbank abspeichern | Falki14 | PHP Einsteiger | 15 | 15.01.2012 21:39 |
| [Erledigt] Datensätze von einer MySQL in eine andere MySQL Datenbank abgleichen | Marvin75 | Datenbanken | 7 | 10.06.2011 18:00 |
| Mehrere Querys klappen in PhpMyAdmin aber nicht in PHP | djscaleo | Datenbanken | 36 | 15.05.2011 02:00 |
| [Mitmachquiz] Gästebuch mit beliebiger Datenbank | Asipak | Off-Topic Diskussionen | 69 | 02.03.2011 11:03 |
| [Erledigt] Datensatz von Datenbank A nach Datenbank B kopieren | GruenerQuark | Datenbanken | 2 | 17.01.2011 17:19 |
| Variablenname aus Datenbank auswerten | Eratech | PHP Tipps 2010 | 6 | 04.05.2010 18:09 |
| Allgemein Werte in Datenbank updaten | chunky | PHP Tipps 2010 | 1 | 08.04.2010 22:35 |
| Datenbank richtig aufgebaut? | bageleudi | Datenbanken | 2 | 31.03.2010 21:01 |
| schribt nichts in die datenbank | Cheesy92 | PHP Tipps 2006 | 9 | 27.10.2006 14:03 |
| String in Datenbank finden | Pimbolie1979 | Datenbanken | 11 | 13.10.2006 15:37 |
| Sql Datenbank durchsuchen und vergleichen | Teambyte | PHP Tipps 2006 | 5 | 14.09.2006 11:11 |
| Mehrere Anwendungen eine Datenbank... | Datenbanken | 5 | 15.08.2005 11:22 | |
| mysql datenbank anlegen...aber WIE??? | Datenbanken | 0 | 05.08.2005 19:33 | |
| [Erledigt] mysql datenbank anlegen...aber WIE??? | PHP Tipps 2005-2 | 0 | 05.08.2005 19:33 | |
| INSERT in die Datenbank | PHP Tipps 2004-2 | 4 | 13.12.2004 19:51 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| objekt aus datenbank füllen php, ibject klassen id mit inhalt füllen password, datenbank datensätze klassen in einer schleife zuweisen php |