Hvad angår sql-injektionen, ville jeg skifte til PDO ved hjælp af en forberedt erklæring .
Du kan bruge en simpel is_array()
på dine værdier for at tjekke for et array og derefter gå igennem det. Du har ret, som det er, dit filter
funktion vil ikke håndtere arrays korrekt.
Rediger: Hvis du bruger PDO og en forberedt erklæring, behøver du ikke mysql_real_escape_string
længere. strip_tags
, htmlentities
og trim
er heller ikke nødvendige for at gemme oplysningerne sikkert i en database, de er nødvendige, når du udsender information til browseren (trim
ikke selvfølgelig...), selvom htmlspecialchars
ville være tilstrækkeligt til det. Det er altid bedre at forberede din information/output korrekt til det medie, du udsender til på det tidspunkt.