Verbindung aufbauen
Eine Verbindung zur Datenbank kann wie folgt aufgebaut werden:
<?php
$mysqli = new mysqli("localhost", "user", "password", "database");
if ($mysqli->connect_errno) {
die("Verbindung fehlgeschlagen: " . $mysqli->connect_error);
}
?>
SQL Query an Datenbank senden
Zum Senden von Queries an die Datenbank wird die Methode query($sql) verwendet:
<?php
$mysqli = new mysqli("localhost", "user", "password", "database");
if ($mysqli->connect_errno) {
die("Verbindung fehlgeschlagen: " . $mysqli->connect_error);
}
$sql = "UPDATE tabelle SET spalte = 'Wert' WHERE id = 1";
$mysqli->query($sql);
?>
Prepared Statements
Prepared Statements sind in MySQLi sehr umständlich umzusetzen, erheblich umständlicher als in PDO. Ein Beispiel sieht wie folgt aus:
<?php
$mysqli = new mysqli("localhost", "user", "Password", "database");
if ($mysqli->connect_errno) {
die("Verbindung fehlgeschlagen: " . $mysqli->connect_error);
}
$sql = "UPDATE user SET email = ?, passwort = ? WHERE id = ?";
$statement = $mysqli->prepare($sql);
$statement->bind_param('ssi', $email, $passwort, $id);
//Variablen Werte zuweisen
$id= 1;
$email = "ein@beispiel.de";
$passwort = "neues passwort";
$statement->execute();
?>
Mittels bind_param() Werten die Parameter im SQL-Query mit den Variablen verbunden. Das erste Argument von bind_param(), im obigen Beispiel mit dem Wert ssi sind die Typen der Parameter. ssi gibt an, dass wir drei Parameter im Query haben, den ersten mit dem Typ string, den zweiten vom Typ string und den dritten vom Typ integer. Für Fließkommazahlen existiert noch der Wert d.
Nachdem die Variablen mit den Parametern verbunden wurden, wird diesen der entsprechende Wert zugewiesen und mittels $statement->execute() wird der Prepared Statement an die Datenbank gesendet.