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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: чистка тегов

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Tmin10
Отправлено: 15 Июня, 2011 - 22:33:45
Post Id



Частый гость


Покинул форум
Сообщений всего: 239
Дата рег-ции: Дек. 2009  


Помог: 0 раз(а)




Есть текст, в нём есть следующий фрагмент:
CODE (html):
скопировать код в буфер обмена
  1. Текст...
  2. <blockquote>
  3. <p>if ($_GET['s']=='123')</p>
  4. <p>{</p>
  5. <p>if ($_SESSION['level']=='admin')</p>
  6. <p>{</p>
  7. <p>$_SESSION['admin']='real';</p>
  8. <p>header("location: /admin/index.php"); </p>
  9. <p>}</p>
  10. <p>}</p>
  11. </blockquote>
  12. Текст...

Как именно в этом фрагменте убрать теги p, не трогая другой текст?

(Отредактировано автором: 15 Июня, 2011 - 22:38:38)

 
 Top
EuGen Администратор
Отправлено: 15 Июня, 2011 - 22:35:10
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




PHP:
скопировать код в буфер обмена
  1. $text=preg_replace('/\<p(.*?)\>(.*?)\<\/p\>/ism', $2, $text);


?


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Tmin10
Отправлено: 15 Июня, 2011 - 22:37:00
Post Id



Частый гость


Покинул форум
Сообщений всего: 239
Дата рег-ции: Дек. 2009  


Помог: 0 раз(а)




EuGen пишет:
?

Не, не во всём тексте, а тока между тегами <blockquote>
Я привёл фрагмент только, там ещё полно абзацев.

(Отредактировано автором: 15 Июня, 2011 - 22:37:14)

 
 Top
Tmin10
Отправлено: 16 Июня, 2011 - 10:36:02
Post Id



Частый гость


Покинул форум
Сообщений всего: 239
Дата рег-ции: Дек. 2009  


Помог: 0 раз(а)




Т.е. просто надо как то выделить фрагмент и провести чистку тока в нём...
 
 Top
EuGen Администратор
Отправлено: 16 Июня, 2011 - 10:59:48
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




PHP:
скопировать код в буфер обмена
  1. $text='<p>Текст...</p>
  2. <blockquote>
  3. <p>if ($_GET["s"]=="123")</p>
  4. <p>{</p>
  5. <p>if ($_SESSION["level"]=="admin")</p>
  6. <p>{</p>
  7. <p>$_SESSION["admin"]="real";</p>
  8. <p>header("location: /admin/index.php"); </p>
  9. <p>}</p>
  10. <p>}</p>
  11. </blockquote>
  12. <p>Текст...</p>';
  13. $text=preg_replace_callback('/\<blockquote\>(.*)\<\/blockquote\>/smi',create_function('$rgMatches', 'return "<blockquote>".preg_replace("/\<p(.*?)\>(.*?)\<\/p\>/smi", "$2", $rgMatches[1])."</blockquote>";'),$text);
  14. var_dump($text);


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
LIME
Отправлено: 16 Июня, 2011 - 15:30:19
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




EuGen почему после substr() для выделения фрагмента применить strip_tags() попросту нельзя ? Растерялся
 
 Top
EuGen Администратор
Отправлено: 16 Июня, 2011 - 15:32:22
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Потому что
0. substr не выделит Вам фрагмент
1. strip_tags уберет все теги, а нужно убрать только <p>..</p>


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
LIME
Отправлено: 16 Июня, 2011 - 15:35:49
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




ооо...
извините )) мне спать уже надо ложится ))
 
 Top
Tmin10
Отправлено: 16 Июня, 2011 - 21:29:51
Post Id



Частый гость


Покинул форум
Сообщений всего: 239
Дата рег-ции: Дек. 2009  


Помог: 0 раз(а)




Спасибо, код отлично работает!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB