Що се отнася до sql инжекцията, бих превключил към PDO с помощта на подготвена декларация .
Можете да използвате прост is_array()
върху вашите стойности, за да проверите за масив и след това да го прегледате. Прав си, както е, твоят filter
функцията няма да обработва масивите правилно.
Редактиране: Ако използвате PDO и подготвено изявление, нямате нужда от mysql_real_escape_string
вече. strip_tags
, htmlentities
и trim
също не са необходими за безопасно съхраняване на информацията в база данни, те са необходими, когато извеждате информация в браузъра (trim
не разбира се...), въпреки че htmlspecialchars
би било достатъчно за това. Винаги е по-добре да подготвите информацията/изхода си правилно за носителя, към който изпращате в този момент.