Was die SQL-Injektion betrifft, würde ich mit einer vorbereiteten Anweisung .
Sie können ein einfaches is_array()
verwenden auf Ihre Werte, um nach einem Array zu suchen und es dann zu durchlaufen. Sie haben Recht, so wie es ist, Ihr filter
-Funktion behandelt Arrays nicht korrekt.
Bearbeiten: Wenn Sie PDO und eine vorbereitete Anweisung verwenden, benötigen Sie mysql_real_escape_string
nicht mehr. strip_tags
, htmlentities
und trim
werden auch nicht benötigt, um die Informationen sicher in einer Datenbank zu speichern, sie werden benötigt, wenn Sie Informationen an den Browser ausgeben (trim
nicht natürlich...), obwohl htmlspecialchars
würde dafür reichen. Es ist immer besser, Ihre Informationen / Ausgaben korrekt für das Medium vorzubereiten, auf das Sie gerade ausgeben.