|
|
|
| всем привет!
Вот решил сделать смайлы для сайта! Но возникла проблема, как защитить, что бы вместо смайла, что то другое не передали!
Допустем передаю
регулярным выражеием обрабатываю
$post = str_replace("[:","<img align=middle src=image/smiles/",$postbody);
$post = str_replace(":]",".gif />",$postbody);
|
но ведь и могут передать что то на подобие вот этого:
Привет вот картинка [:smail.gif /><script>alert('я тебя хакну');</script><img src="http://ya.ru/logo:] как она вам?
|
Как можно от этого защититься? | |
|
|
|
|
|
|
|
|
для: Diablo_
(22.06.2008 в 20:45)
| | > регулярным выражеием обрабатываю
Тут нет регулярных выражений.
> Как можно от этого защититься?
Нужно вообще пересмотреть систему замены текстовых смайлов на графические. Например, в явном виде: есть массив текстовых смайлов и массив замены.
> htmlspecialchars()
На этом этапе - никаким боком... | |
|
|
|
|
|
|
|
для: BinLaden
(22.06.2008 в 21:02)
| | так делай простую замену текста а не спец теги у мну например простой текст =) заменяется кодом картинки и потом пишется в базу. весь же остальной текст проходит через htmlspecialchars(stripslashes()); | |
|
|
|