Код видео

#1 24 июля 2011 в 21:42
В общем есть маленький нюанс с добавлением некоторого кода, он его клинит походу ибо он отличается от Ютуба и прочих.

В общем вопрос: где изменить очистку кода при вставке видео? (нужно добавить еще одного провайдера мне).
Или же как добавить еще один бб код?

Чем вариант легче — тот и предлагайте.
#2 24 июля 2011 в 21:52
// Функция — обработчик тега [code=php]// Функция — обработчик тега [video] function video_2html($elem) { $str = '
'; foreach ($elem['val'] as $item) { if ('item'==$item['type']) { continue; } $iframe_regexp = '/<iframe.*?src=(?!«http:\/\/www\.youtube\.com\/embed\/|»http:\/\/vkontakte\.ru\/video_ext\.php\?).*?><\/iframe>/i'; $iframe_regexp2 = '/<iframe.*>.+<\/iframe>/i'; $item['str'] = preg_replace($iframe_regexp, '', $item['str']); $item['str'] = preg_replace($iframe_regexp2, '', $item['str']); $str .= strip_tags($item['str'], '
#3 24 июля 2011 в 22:38
Lover, как выглядит код? если он с ифреймом, то в /core/cms.php есть функция badTagClear()
в ней вырезаются все ифреймы, которые не с ютуба и вконтакте
нужно туда по аналогии добавить проверку на вашего поставщика видео
#4 24 июля 2011 в 23:26


Lover, как выглядит код? если он с ифреймом, то в /core/cms.php есть функция badTagClear()
в ней вырезаются все ифреймы, которые не с ютуба и вконтакте
нужно туда по аналогии добавить проверку на вашего поставщика видео

r2

  1. iframe src="http://test.org/fs0f0esb7873162d30584481dd82a9253fba726c" style="width: 650px; height: 342px; border: none; background-color: #000;" frameborder="0"> iframe
Вот такого типа код.
Спасибо за наводку. Буду смотреть.

p.S> Кстати как в сообщениях делать вставку бб кода HTML, а не PHP?
#5 24 июля 2011 в 23:57
Можно например вот так:

  1.  
  2. $regexp = '';
  3.  
  4. if($allow_domen_iframe){
  5. $domens = explode(',', $allow_domen_iframe);
  6. if($domens && is_array($domens)){
  7. foreach($domens as $domen){
  8. $regexp .= '|"http:\/\/[a-z0-9\.]+\.'.str_replace('.', '\.', $domen);
  9. }
  10. }
  11. }
  12. $regexp = '/<iframe.*?src=(?!"http:\/\/www\.youtube\.com\/embed\/|"http:\/\/vkontakte\.ru\/video_ext\.php\?'.$regexp.').*?>.*?<\/iframe>/i';
  13.  
  14. $code = preg_replace($regexp, '', $code);
где: $allow_domen_iframe список разрешенных доменов для iframe через запятую и $code — строка, возможно содержащая iframe. Т.е. в строке $code будут удалены все ифреймы, кроме ютуба и вконтакте, а так же для доменов, указанных в $allow_domen_iframe.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.

Похожие темы

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.