CodeIgniter – Datenbank
Als erweiterung zu meinem letzen Betrag über die Einführung in Codeigniter, hier nun eine Fortsetzung
Heute geht es bei mir um die Datenbank Klasse in dem Framework CodeIgniter
Um die Datenbank Klasse zu nutzen müsst ihr entweder dort wo ihr die Klasse nutzen wollte diese einbinden durch:
$this->load->database();
erst einmal die Klasse und die Verbindung laden, andere möglichkeit ist es diese bei den Konfigurationen in der autoload.php mit einzutragen dann könnt ihr sie überall aufrufen ohne diese erst einmal zu laden.
Wenn man ein ganz normale stellt bei der Klasse Datenbank Klasse von Codeigniter kann man auch immer direkt dort fragen wie viele Zeilen ehr zurück geben will, demnach sieht eine Simple abfrage so aus:
$query = $this->db->query("select bla, blubb from my_table");
if( $query->num_rows > 0 ) {
foreach( $query->result() as $row ) {
echo $row->bla . '<br />';
}
}
Wenn ihr lieber Arrays nutzen wollt stellt euch CodeIgniter dort eine andere Funktion bereit:
$query = $this->db->query("select bla, blubb from my_table");
if( $query->num_rows > 0 ) {
foreach( $query->result_array() as $row ) {
echo $row['bla'] . '<br />';
}
}
Bei z.B. einer Abfrage ob es diesen User gibt erwartet man ja für gewöhnlich nur eine Zeile zurück, dort könnt ihr dann statt $query->result() einfach nur $query->row() bzw. row_array() nutzen.
Activ Record
Natürlich kann Codeigniter auch mit Activ Record dienen.
Um z.B. alle Zeilen einer Tabelle auszugeben muss nur die Funktion get(‘my_table’) aufgerufen werden.
Insert gehen so auch schön leicht, da muss immer nur Key = Spaltenname und Value = dem Wert der in die Spalte soll und dann nur noch mit insert() rein schreiben
$daten = array(
"name" = "Bennet",
"webseite" = "bennet-matschullat.de"
);
$this->db->insert('user', $daten);



