![]() |
Вопрос в следующем, как защититься от добавления пользователем в форму спец. символов, например
Код:
",',<,> А то можно бед наделать вот например что-то вроде Код:
'; drop table table; Код:
$a = ereg_replace("<","&lt;",$a); |
knife
а если так?: Код:
|
Бороться с кавычками поможет функция addslashes (Возвращает строку со слэшами перед символами, которые должны быть закавычены в запросах БД и т.п.. Это одинарная ('), и двойная (") кавычки, обратный слэш/backslash (\)и NUL (NULL-байт)) и ее аналог addсslashes (тут стоит почитать мануалы, там фишки свои).
можно проверять тип приходящих данных - is_тип или насильно устанавливать тип - settype. Можно создать ассоциативный массив в виде опасный_символ(ы)=>безопасный_символ(ы) и в цикле пройтись по данным функцией str_replace. Ну и конечно регулярные выражения как на проверку так и на конвертирование. Все вышеперечисленное не претендует на панацею :). |
Prisoner
Да, слышал об этих функциях, но к сожалению они не заменяют знаки html разметки, а это мне тоже необходимо. Blast А что так сложно, но за подсказку ф-ии htmlspecialchars() спасибо. Почитал о ней, оказалось с параметром ENT_QUOTES заменяет все кавычки, а также < & и >. Вопрос в следующем, достаточно ли замены этих спец. символов чтобы себя обезопасить? |
Цитата:
Цитата:
|
Время: 22:29. |
Время: 22:29.
© OSzone.net 2001-