Die MySQLi-Erweiterung prozedural verwenden

Bei der prozeduralen Verwendung der MySQLi-Erweiterung ist zu betrachten, dass sich die Funktionsnamen gegenüber der MySQL-Erweiterung von mysql_*() zu mysqli_*() geändert haben. Ferner erwarten die Funktionen der MySQLi-Erweiterung die explizite Angabe der zu verwendenden Verbindungsressource als Parameter für Funktionen wie beispielsweise mysqli_query(). Die Angabe dieses Parameters war bei der MySQL-Erweiterung optional, da diese die Verwendung einer Standardverbindung unterstützte.

Eine Standardverbindung wird von der MySQLi-Erweiterung ebensowenig unterstützt wie persistente Verbindungen. Letztere werden in Zukunft durch die Verwendung eines Verbindungsmanagers ersetzt, sobald dieser als Bestandteil von MySQL 5.0 verfügbar ist.

Beispiel 10.5 zeigt die prozedurale Verwendung der MySQLi-Erweiterung analog zu dem in Beispiel 10.1 gezeigten Beispiel.

Beispiel 10.5: Die MySQLi-Erweiterung prozedural verwenden

<?php
$connection = mysqli_connect(
  'localhost',
  'user',
  'password',
  'test'
);
 
if ($connection === FALSE)
  handle_error(mysqli_connect_error());
 
$result = mysqli_query(
  $connection,
  'SELECT spalte FROM tabelle'
);
 
if ($result === FALSE)
  handle_error(mysqli_error($connection));
 
while ($row = mysqli_fetch_assoc($result)) {
  // ...
}
 
mysqli_free_result($result);
mysqli_close($connection);
 
function handle_error($message = '') {
  // ...
}
?>