#1 2008.07.13 13:43

denich
Участник
Откуда: нижегородская область
Зарегистрирован: 2008.05.28
Сообщений: 301
Карма: 0
Профиль

профильтровать на.

Код:

1
lt;?$data = htmlspecialchars(stripslashes($data)); ?>

вот в $data находятся данные введённые юзером(ник,сообщение,мыло), если таком образом отфильтровать, то этого достаточно уберечся от нехороших дядек?
или нада какждую принятую от юзера фильтровать?

Код:

1
lt;? $data['mail']=safe_var($_POST['mail']); //мыло $data['sity']=safe_var($_POST['sity']); //город $data['nick']=safe_var($_POST['nick']); //ник $data['text']=safe_var($_POST['text'],true); //текст введённый им $data['time']=date('d.m.y G:i'); //время добавления $data['br']=safe_var($_SERVER['HTTP_USER_AGENT']); //агент егошний $data['ip']=safe_var($_SERVER['REMOTE_ADDR']); //это IP адрес $tr=@$_POST['tr']; //транслит?>

и ещё, что такое safe_var() везде искал, нигде нет, видать старая функция..


ska ska ska

Неактивен

#2 2008.07.13 14:40

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: профильтровать на.

нет, не достаточно. если это пойдет в БД, то нужно еще mysql_escape_string как минимум.
так же, нужно предусмотреть что могут ввести символы из ANSI таблицы ниже 32, кроме табуляции.

Код:

1
span style="color: #0000BB"><?phpfunction clean($text){return str_replace(array(chr(0),chr(1),chr(2),chr(3),chr(4),chr(5),chr(6),chr(7),chr(8),chr(9),chr(10),chr(11),chr(12),chr(14),chr(15),chr(16),chr(17),chr(18),chr(19),chr(20),chr(21),chr(22),chr(23),chr(24),chr(25),chr(26),chr(27),chr(28),chr(29),chr(30),chr(31)),null,$text);}?>

оставляет только перенос строки ("\n")
а вообще я всегда повторяю, что нет и не может быть универсальных функций фильтрации, все зависит от конкретного случая.
функции safe_var судя по всему не существует, скорее всего это собственно написанная функция.
http://ru2.php.net/safe_var как видим такой нет.
Добавлено спустя    55 секунд:
кстати $_SERVER['REMOTE_ADDR'] можно и не фильтровать

Неактивен

#3 2008.07.13 18:39

denich
Участник
Откуда: нижегородская область
Зарегистрирован: 2008.05.28
Сообщений: 301
Карма: 0
Профиль

Re: профильтровать на.

вот блин))) и точно))

Код:

1
lt;?function safe_var($str,$brl=false){ $str=trim(stripslashes(htmlspecialchars($str))); if($brl) $str=nl2br($str); $str=strtr($str,array("\r"=>' ',"\n"=>' ')); return $str;}?>

скрипт на файлах, не на базе..


ska ska ska

Неактивен

Дополнительно

forum.wapinet.ru

PunBB Mod v0.6.2
0.009 s