Hi!
Du solltest _grundsätzlich_ Daten mit der mysql_real_escape_string() bzw mysqli_real_escape_string() behandeln, die du in die Datenbank schreibst. Wenn du dir das angewöhnst, musst du auch nicht mehr groß drüber nachdenken und solche fehler passieren nicht.
Prinzipien sind nicht dazu da, das Nachdenken zu ersetzen. Es ist falsch, _grundsätzlich_ Daten mit mysql(i)_real_escape_string() zu behandeln. Die Funktion(en) müssen situationsgerecht eingesetzt werden. Siehe Zahlen im MySQL-Statement.
Lo!