Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> удалить теги html 
:(
    Опции темы
gcc
Дата 10.2.2009, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



1) не могу найти модуль для удаление всех тегов из строк полученной из POST/GET 

есть модули которые работает из файлами, но мне надо сктрока

это защита от этого:
http://ru.wikipedia.org/wiki/Межсайтовый_скриптинг

этого достаточно?

Код

#Обрабатываю таги H-H1-H6:

$html =~ s/<h([0-6]).*?>/&lth$1&gt/ig;# Открывающий таг
$html =~ s/<\/h([0-6])>/&lt\/h$1&gt/ig;# Закрывающий таг



#Обрабатываю таги <p>, выбрасывая весь мусор, кроме по-разному заданного align:

$html =~ s/<p(.*?)>/&cleanup_p($1)/gie;

sub cleanup_p
{

my $input = shift;


if ($input =~/justify/)
   {
      $input=~ s/[^>]*/ align=justify/;
   }elsif ($input =~/right/)
   {
      $input=~ s/[^>]*/ align=right/;
   }else
   {
      $input = ();#Очищаюсь
   }
   

return qq~&ltp~.$input.qq~&gt~;
}

$html =~ s/<\/p>/&lt\/p&gt/ig;# Закрывающий таг



$html =~ s/<OL(.*?)>/&ltOL&gt/ig;# Удаляю все ненужное внутри <OL>
$html =~ s/<\/OL>/&lt\/OL&gt/ig;# Закрывающий таг

#Таким же образом перерабатываю <UL> и <LI>




$html =~ s/(<[^>]*>)//igs;# Остальные таги, не задействованные в разметке, удаляю


#$html =~ s/&lt/</ig; # Возвращаю левые скобки
#$html =~ s/&gt/>/ig; # Возвращаю правые скобки


2) нужно ли экранировать полученное из param() и vars() в скрипт + потом в DBI через prepare() ? функция param сама экранирует опасные симвоыл и дос?

если не ошибаюсь по-моиму уважаемый KSURi, писал давно что надо экранировать дополнительно param()

3) про BB странсляторы нашел тут http://search.cpan.org/search?query=BBCode+&mode=all

Это сообщение отредактировал(а) gcc - 10.2.2009, 19:36
PM WWW ICQ Skype GTalk Jabber   Вверх
arto
Дата 10.2.2009, 19:58 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



HTML::Scrubber?
PM MAIL ICQ   Вверх
gcc
Дата 16.2.2009, 02:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



спасибо не увидел сначало этот модуль HTML::Scrubber

кстате, а что в каталиcте экринирует от xss или теги html etc?

в примере я видел только это   
  
Код

# DFV requires a CGI.pm-like input hash
    my $results = Data::FormValidator->check($c->req->params, \%dfv_profile);


странно в книге написано это: smile 

Цитата

This is just a regular XHTML file, with some special control sequences for the
Template Toolkit. [% word%] tells TT to get a variable called "word" and print it at
that point in the template. The | html part after "word" in the example above is a TT
filter that means to escape any HTML in word so that < is rendered as an actual <
sign and not an HTML tag. This prevents a type of security hole called "XSS" (cross-
site scripting). While security probably isn't important for a "hello world" page, it's
wise to get into good habits now.



мне нужно перед тем как вставлять в mysql отфильтровать, а есть что-то подобное в HTML Templates?
мне сейчас просто сложнова-то модель или плагин сделать для HTML::Scrubber...

Это сообщение отредактировал(а) gcc - 16.2.2009, 04:13
PM WWW ICQ Skype GTalk Jabber   Вверх
gcc
Дата 21.4.2009, 04:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



подскажите есть что-то кроме HTML::Scrubber, а то он большой
(в документации написано что надо выбрать что удалять, но есл имне нало все удалить а оставить только текст, иам это не нпсиано, в исходниках я не понял)

спрашиваю чтобы велосипед не писать

я думал что надо удалить  
Код


           '&'  => '&amp;' , 
            '"'  => '&quot;', 
            '\'' => '&apos;', 
            '<'  => '&lt;'  , 
            '>'  => '&gt;'



но оказывается там еще есть...

Это сообщение отредактировал(а) gcc - 21.4.2009, 04:48
PM WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0669 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.