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:
<!--?php print_r($_POST); ?--> <form method="POST"> <input name="loginName" type="text" /> <input name="loginPass" type="password" /> <input name="doLogin" type="submit" value="Einloggen" /> </form>
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.
