Datenbank Klasse verwenden: Unterschied zwischen den Versionen
Aus Contao Community Documentation
(→Datensätze lesen) |
(→Datensätze lesen) |
||
Zeile 30: | Zeile 30: | ||
</source> | </source> | ||
− | Die Fragezeichen werden | + | Die Fragezeichen sind Wildcards. Sie werden der Reihenfolge nach von den Parametern der execute-Funktion ersetzt. Dabei werden die parameter escaped, also für die Datenbank aufbereitet. |
+ | Das schütz allerdings '''nicht''' vor boshaften Benutzereingaben. Diese sollten immer mit der Input-Klasse verarbeitet werden! | ||
== Datensätze schreiben == | == Datensätze schreiben == |
Version vom 18. Februar 2011, 10:52 Uhr
Unvollständiger Artikel: dieser Artikel ist noch nicht sauber bearbeitet.
Bitte erweitere ihn und entferne erst anschliessend diesen Hinweis. |
Inhaltsverzeichnis
Informationen zur Datenbank-Klasse
Contao bietet für Entwickler eine Klasse an, um mit der Datenbank zu kommunizieren. Diese sollte beim Entwickeln von Erweiterungen unbedingt verwendet werden!
Die Datenbank-Klasse bietet mehrere Vorteile:
- Die Daten werden "gesäubert" und störende Zeichen maskiert
- Ein Objekt der Klasse Database_Result wird zurückgegeben. Dieses enthält alle Informationen zum Query
- Ersparnis von Schreibarbeit
Operationen auf der Datenbank
Datensätze lesen
Lesen von Datensätzen ohne Bedingung
$result = $this->Database->prepare("SELECT * FROM tl_log")->execute();
Lesen von Datensätzen mit Bedingung
$result = $this->Database->prepare("SELECT * FROM tl_log WHERE id=?")->execute(1); $result = $this->Database->prepare("SELECT * FROM tl_log WHERE id=? OR id=?")->execute(1, 5);
Die Fragezeichen sind Wildcards. Sie werden der Reihenfolge nach von den Parametern der execute-Funktion ersetzt. Dabei werden die parameter escaped, also für die Datenbank aufbereitet. Das schütz allerdings nicht vor boshaften Benutzereingaben. Diese sollten immer mit der Input-Klasse verarbeitet werden!