Помощник
|
Фильтр тегов JS, PHP и HTML в форме PHP |
Валериан
|
Сообщение
#1
|
||
|
|
||
|
|||
ZhukV |
23.3.2010, 21:28;
Ответить: ZhukV
Сообщение
#2
|
|
Здесь есть два вариатна решение:
1. Прямой запрет на ввод тегов (нужно использовать регулярные выражение) 2. Экранизировать все спец.символы и далее выводить (воспользоватся заменой найденых участков тегов). |
|
|
Валериан
|
Сообщение
#3
|
|
|
|
|
ZhukV |
23.3.2010, 22:47;
Ответить: ZhukV
Сообщение
#4
|
|
Вот одна из простых функций для этого:
[PHP] function encode_html($str,$type='code'){ if($type=='code'){return htmlspecialchars($str,ENT_QUOTES);} if($type=='encode'){ $trans=get_html_translation_table(HTML_ENTITIES,ENT_QUOTES); $trans=array_flip($trans);; return strtr($str, $trans); } } [/PHP] Для того, чтоб подать текст для вывода на экран как текста, а не как HTML-кода, пользуйся так: [PHP] $text=encode_html($_POST['text']); echo $text; [/PHP] Будет выведен текст в стиле text/plain А если ситуауия наоборот, тоесть текст перекодирован для вывода как текста, а те нужно его вывести как html-код, то делай так: [PHP] $text=encode_html($res,'encode'); echo $text; [/PHP] |
|
|
Валериан
|
Сообщение
#5
|
|
Вот одна из простых функций для этого: [php] function encode_html($str,$type='code'){ if($type=='code'){return htmlspecialchars($str,ENT_QUOTES);} if($type=='encode'){ $trans=get_html_translation_table(HTML_ENTITIES,ENT_QUOTES); $trans=array_flip($trans);; return strtr($str, $trans); } } [/php] Для того, чтоб подать текст для вывода на экран как текста, а не как HTML-кода, пользуйся так: [php] $text=encode_html($_POST['text']); echo $text; [/php] Будет выведен текст в стиле text/plain А если ситуауия наоборот, тоесть текст перекодирован для вывода как текста, а те нужно его вывести как html-код, то делай так: [php] $text=encode_html($res,'encode'); echo $text; [/php] А куда вставлять [php] $text=encode_html($_POST['text']); echo $text; [/php]? :) |
|
|
ZhukV |
24.3.2010, 0:33;
Ответить: ZhukV
Сообщение
#6
|
|
Вот к примеру у тя есть оброботчик, который текст записывает в базу все коментарии (форма имеет тип передачи даных $_POST):
Для начала нужно вытащить текст с переменной: [PHP] $text=$_POST['text']; [/PHP] Ну далее, наверное ты понял, нам нужно ее обработать: [PHP] $text_write=encode_html($text); [/PHP] Ну и в конце просто записать в базу уже готовый код: [PHP] $sql="INSERT INTO table (comment) VALUES ('$text_write')"; [/PHP] Думаю суть ты понял... |
|
|
Валериан
|
Сообщение
#7
|
|
Спасибо Вам большое, у меня получилось :) (ставлю Вам спасибо))
|
|
|
brittvva |
28.3.2011, 10:58;
Ответить: brittvva
Сообщение
#8
|
|
Почитайте здесь http://savvateev.org/blog/36/
|
|
|
B.B. |
28.3.2011, 12:08;
Ответить: B.B.
Сообщение
#9
|
|
|
|
|
LifeUP |
28.3.2011, 17:07;
Ответить: LifeUP
Сообщение
#10
|
|
чтобы не пихали левые тэги нужно всеголиш написать:
[PHP] $text = strip_tags ($text); [/PHP] И всё, все тэги будут вырезаны, если какието надо оставить то 2 параметром в скобках перечислите их |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Вёрстка HTML-писем | 30 | Vampler | 29392 | 27.3.2024, 12:41 автор: Vampler |
|
Разработка/доработка сайтов Wordpress, HTML/CSS/JS Вёрстка, перенос на WP, правки |
9 | malamut | 3481 | 25.1.2024, 14:36 автор: malamut |
|
СОЗДАНИЕ : / САЙтЫ / ЛЕНДЫ / БОТЫ ТГ / ВАЙТЫ / КРЕО / СОФТЫ / ДИЗАЙН [PHP, JS, HTML/CSS] и другое | 5 | CULA | 3415 | 19.12.2023, 18:55 автор: CULA |
|
Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery Разработка сайтов и сервисов под-ключ |
0 | alexey | 1243 | 24.11.2023, 14:46 автор: alexey |
|
Веб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP) | 56 | qpPeW | 44916 | 19.7.2023, 10:03 автор: qpPeW |
Текстовая версия | Сейчас: 23.4.2024, 14:32 |