Фильтрация данных + вывод + сохранение

Печать RSS
241

Автор
Пишу, строю и воображаю
0
Привет! Казалось бы заезженная тема "ФИЛЬТРАЦИЯ ДАННЫХ", и вроде как бы она легкая, ведь выполняется всего несколькими функциями чистки. Но всё же я столкнулся со сложностью. И хотел бы чтобы меня направили.

Пишу маленькую админ панель по обновлению простых текстовых записей на сайте. Так вот. ЧТо получается:

Администратор входит в панель и в поле textarea пишет текст, и например вставляет ссылку с (') или ("), и при добавление в базу добавляются \ либо вообще выходит ошибка. Хотелось бы узнать, как именно фильровать ТЕКСТОВЫЕ ДАННЫЕ где могут находится такие спецсимволы?

Далее, как вывести эти данные на сайт чтобы была правильная корректировка?

Далее, как вывести эти данные в панельку при очередном обновлении.

У меня как то не получается это связать. А в интернете только про фильтрацию, про вывод и пересохранение ничего не нашел.
И

Пацак
0
Далее, как вывести эти данные на сайт чтобы была правильная корректировка?
т.е при выводе без \? stripslashes($text)
Далее, как вывести эти данные в панельку при очередном обновлении.
не понял
Изменил: Изнаур (19.02.2013 / 21:36)
Автор
Пишу, строю и воображаю
0
2, а как до? опиши пожалуйста все действия.

Вот человек ввёл данные, как их перед добавлением в базу отфильтровать?

Далее, при выводе на сайт, как вывести данные из базы?
И

Пацак
0
Moto-Moto (19 Февраля 2013 / 21:39)
2, а как до? опиши пожалуйста все действия.

Вот человек ввёл данные, как их перед добавлением в базу отфильтровать?

Далее, при выводе на сайт, как вывести данные из базы?
ты с Mysql работаешь?
<?
htmlspecialchars(mysql_real_escape_string($text));
//записываешь в БД
?>
в файле где выводишь
<?
$text = mysql_fetch_assoc(mysql_query(/*запрос куда нужно*/))
echo stripslashes($text['имя поля']);
?>
Но лучше спроси у кого опыта больше,я даже не уверен что правильно тебя понял
Изменил: Изнаур (19.02.2013 / 21:49)
В

Кодер
0
какой драйвер ты юзаешь для бд?
Автор
Пишу, строю и воображаю
0
4, и всё??? $text=htmlspecialchars(mysql_real_escape_string($text)); потом $text в insert?

5, как понять ДРАЙВЕР?
И

Пацак
0
6. Moto-Moto, htmlspecialchars защита от XSS mysql_real_escape_string от Sql Injection,что ещё?)да потом в insert

Junior Developer
0
Moto-Moto (19 Февраля 2013 / 19:55)
4, и всё??? $text=htmlspecialchars(mysql_real_escape_string($text)); потом $text в insert?

5, как понять ДРАЙВЕР?
драйвер...
MySQL/MySQLi/PDO/SQLite
К

Айсберг Визави
0
ну вообще-то правильнее фильтровать все случаи особенными методами, а не подгонять под один шаблон. Сначала ставим задачу - потом решаем. Если у нас есть, к примеру, $text, которая из $_POST['text'], то нам нужно для защиты от XSS защититься. Обрабатываем htmlentities(), причем указываем в параметрах(второй аргумент) ENT_QUOTES, что будет дополнительно превращать одинарные и двойные кавычки в их сущности. Третий аргумент - кодировка. Все. Но это годиться только в том случае, который я описал выше.

Добавлено через 01:02 сек.
А насчет SQL - injection не стоит париться, если юзаем PDO. Там все учтено. Фильтруем только на предмет XSS
Автор
Пишу, строю и воображаю
0
Покажи реальный пример. Это же всего несколько строк....

$_POST[TEXT] получаем с формы... Как его фильтровать чтобы записать в базу данных MYSQL?

Далее, как вывести с базы данных, используя какую функцию или напрямую просто echo $text;?

Подключения к бд и т.д. не нужно, конкретно ДО записи как фильтруем и при выводе как выводим?
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск