Титла: Помощ за филтрация на входящи данни Публикувано от: a_panov в Aug 12, 2009, 18:31 Имам проблем с филтрирането на данни на една форма. По-долу кода е РНР с което правя някаква филтрация на входящите данни. Но не съм го написал много добре, сега като попадне някакъв забранен символ те изхвърля навънка. Бих искал да се заменят "неудобните" знаци с които може да се правят хакерски атаки. Искам така да се промени скрипта така че да заменя хакерските символи и скрипта да те изхвърля по-малко. Имах и проблем с UTF-8, но съм ги решил.
Помогнете ми да направя по-добра филтрация. Код
Титла: Re: Помощ за филтрация на входящи данни Публикувано от: tyuio в Aug 12, 2009, 18:51 http://www.pe-bg.com/?cid=3&pid=22576
Титла: Re: Помощ за филтрация на входящи данни Публикувано от: koleto в Aug 13, 2009, 11:38 А защо като има проблем с входните данни не извежда съобщение за грешка, а те хвърля в evitatrade.com?
Титла: Re: Помощ за филтрация на входящи данни Публикувано от: sdr в Aug 13, 2009, 14:23 Общо взето се опитваш да решиш проблема от грешния край. "филтрирането" което правиш е напълно излишно. Върпса е към SQL сървъра ти да не минават директно данни преди това винаги (int)$int_val, (float)$float_val ,'"'.addslashes($strdate_val).'"' или там както е правилно да обработиш стринговете за да са гарантирано ок към сървъра, а наопаки всичкото стринг минава през htmlspecialchasrs () и не се занимаваш с глупости :)
Титла: Re: Помощ за филтрация на входящи данни Публикувано от: VladSun в Aug 14, 2009, 16:23 Съгласен съм със sdr с едно изключение - не ползвай add_slashes за "обезопасяване" на данни подавани към SQL сървер. Ползвай съответната функция за съответния SQL сървер:
http://us.php.net/manual/en/function.mysql-real-escape-string.php http://us2.php.net/manual/en/function.pg-escape-string.php и т.н. |