PHP Sammelsurium

Hier sammeln wir PHP Informationen.

Alte PHP Anwendungen und der Mysql strict mode

Manche PHP Anwendungen nehmen es nicht so genau mit Datentypen. Da wird dann z.B. „2000abc“ in ein integer Feld der Datenbank geschrieben, was in früheren Mysql Versionen nur eine Warnung produzierte. Das Problem ist, dass dabei Daten abgeschnitten oder geändert in der Datenbank landen, was sicher in vielen Fällen nicht erwünscht ist.
MySQL im „strict“ Modus meldet hingegen einen Fehler und die insert Anweisung schlägt fehl.

Möchte man dieses Verhalten, also die sinnvolle Typprüfung, deaktivieren, kann man den strict Mode mit folgender Anweisung für die aktuelle Datenbank-Verbindung abschalten:

mysql_query("SET SESSION sql_mode=''");

Besser wäre natürlich, den PHP Code und die verwendeten Datentypen zu korrigieren.