Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Безопасность вывода данных, введенных пользователем
Форумы портала PHP.SU » PHP » Программирование на PHP » Безопасность вывода данных, введенных пользователем

Страниц (1): [1]
 

1. metra - 09 Апреля, 2011 - 16:51:50 - перейти к сообщению
Если выводимый контент на сайте вводится в обычных textarea пользователями, как обезопасить сайт от атак?
К примеру, если в textarea код на JavaScript/php/html и пр.
Вопрос о SQL Injection не стоит - это самое простое.
2. Мелкий - 09 Апреля, 2011 - 17:24:40 - перейти к сообщению
Код PHP не исполнится в любом случае, кроме eval или если вы его будете где-нибудь в callback'ах использовать.
Всё остальное - htmlspecialchars или htmlentities
3. metra - 17 Апреля, 2011 - 10:42:16 - перейти к сообщению
Задача решена. Благодарю.
Новая задача - делать тоже самое, только не трогать определенные теги (на пример <br>, <strong>).

Если выразить задачу более глобально - нужно, что бы в обычном textarea присутствовала возможность переноса строки по нажатию на enter. И ничего более.
4. nikob - 17 Апреля, 2011 - 10:56:41 - перейти к сообщению
metra пишет:
Задача решена. Благодарю.
Новая задача - делать тоже самое, только не трогать определенные теги (на пример <br>, <strong>).

Если выразить задачу более глобально - нужно, что бы в обычном textarea присутствовала возможность переноса строки по нажатию на enter. И ничего более.


Нужно заменить \n на <br> после выполнения двух указанных ранее функций.
5. Мелкий - 17 Апреля, 2011 - 11:07:21 - перейти к сообщению
metra пишет:
Если выразить задачу более глобально - нужно, что бы в обычном textarea присутствовала возможность переноса строки по нажатию на enter. И ничего более.

Эт как раз более локально. nl2br

metra пишет:
Новая задача - делать тоже самое, только не трогать определенные теги (на пример <br>, <strong>).

Если требуется вырезать все теги, кроме: strip_tags, второй параметр.
6. metra - 17 Апреля, 2011 - 11:29:14 - перейти к сообщению
Спасибо вам. Думаю проблема решена.

nikob, не знал что при нажатии на enter вставляет "\n", хотя это вроде азы)
Мелкий, странно, что эта функция в составе стандартного PHP, ведь она работает как регулярка или str_replace, но без дополнительных параметров)
7. Мелкий - 17 Апреля, 2011 - 11:48:55 - перейти к сообщению
metra, в стандартных функциях PHP много регулярок вкомпилено. Одна filter_var чего стоит Закатив глазки

 

Powered by ExBB FM 1.0 RC1