phpundmysql.de

Errata der 3. Auflage

Kapitel 4: Einführung in PHP

In Kapitel 4.6.4 wird auf ein Skript verwiesen, das es leider nicht auf die Buch-CD geschafft hat. Anbei der wenig umfangreiche Quellcode:


Buch-CD, Listing 6.1

Auf der Buch-CD liegt der Quellcode nicht in UTF-8 Kodierung vor. Es sind dadurch einige Zeichen kaputt gegangen. Statt des

 mysqli_affected_rows($link) != �1

muss es natürlich

 mysqli_affected_rows($link) != -1

heißen. Vielen Dank an Volker für diesen Tipp.

Kapitel 14.3.1: Datenbankverbindungen

Auf Seite 599 wird im Befehl: fetch_array die Konstante MYSQL_ASSOC verwendet. Da hier aber die mysqli-Schnitstelle verwendet wird, muss natürlich die Konstante MYSQLI_ASSOC verwendet werden.

Korrekter Code: while ($line = $ResultObj->fetch_array(MYSQLI_ASSOC))

Kapitel 15: Sichere Webanwendungen

In Kapitel 15.7.2 Fehlerbehandlungsklasse wird eine Liste mit abzufangenden Fehlern aufgestellt. Die hierin genannten Fehler lassen sich aber nicht alle abfangen. Im PHP-Manual auf php.net gibt der folgende Absatz Auskunft über die Ausnahmen (also Fehlertypen, die sich nicht abfangen lassen):

Die folgenden Fehlertypen können nicht von einer benutzerdefinierten Funktion behandelt werden: E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING und die meisten E_STRICT, die in der Datei ausgelöst werden, in der set_error_handler() aufgerufen wird. (Quelle: http://php.net/manual/de/function.set-error-handler.php)

Das Auf Seite 698 definierte Array $errortypes muss also um die Typen E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING und E_STRICT bereinigt werden. Danke an unseren Leser Stefan H. für diesen Hinweis.