JSTQ Опубликовано 29 мая, 2009 Жалоба Опубликовано 29 мая, 2009 Нигде на нашел его для phpbb 2.x, сам php и html незнаю.Вот какие коды есть (вроде файл верный, если нет, подскажите в каком искать)function prepare_bbcode_template($bbcode_tpl){... $bbcode_tpl['img'] = str_replace('{URL}', '\\1', $bbcode_tpl['img']); $bbcode_tpl['align_open'] = str_replace('{ALIGN}', '\\1', $bbcode_tpl['align_open']);...}function bbencode_second_pass($text, $uid){... // code.. // This one gets first-passed.. $patterns[] = "#\#i"; $replacements[] = $bbcode_tpl['img']; $patterns[] = "#\[imgreflect]([^?](?:[^\[]+|\[(?!url))*?)\[/imgreflect]#i"; $replacements[] = $bbcode_tpl['imgreflect']; // Formatted Image code.. $patterns[] = "#\([^?](?:[^\[]+|\[(?!url))*?)\#i"; $replacements[] = $bbcode_tpl['img']; // [align=left/center/right/justify]Formatted Code[/align] code.. $text = preg_replace("/\[align=(left|right|center|justify)]/si", $bbcode_tpl['align_open'], $text); $text = str_replace("[/align]", $bbcode_tpl['align_close'], $text);...} // bbencode_second_pass()function make_bbcode_uid(){... // code.. $text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "''", $text); // Formatted Image code.. $text = preg_replace("#\((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[align=\\1]\\2[/align]'", $text); // [align=left/center/right/justify]Formatted Code[/align] code.. $text = preg_replace("#\[align=(left|right|center|justify)\](.*?)\[/align\]#si", "[align=\\1]\\2[/align]", $text);} // bbencode_first_pass()Выделенное курсивом писал сам, оно естесственно неправильно. Думаю что тег основан на смеси img и align'а, от этого и отталкивался.В сообщении написано [img=http://ftp.burnet.ru/incoming/users/torrent/626/lodapic13se1.jpg]В свойствах картинки адрес http://сайт/righthttpТо, что картинка справа, уже хорошо)
Po$amax@ Опубликовано 29 мая, 2009 Жалоба Опубликовано 29 мая, 2009 лучше свою процедуру обработки сделать
JSTQ Опубликовано 31 мая, 2009 Автор Жалоба Опубликовано 31 мая, 2009 ап Немогу никак добиться чтобы появился правильный {URL} $bbcode_tpl['img_style'] = str_replace('{ALIGN}', '\\1', $bbcode_tpl['img_style']); $bbcode_tpl['img_style'] = str_replace('{URL}', '\\2', $bbcode_tpl['img_style']); // image_url_here code.. // This one gets first-passed.. $patterns[] = "#\([^?](?:[^\[]+|\[(?!url))*?)\#si"; $replacements[] = $bbcode_tpl['img_style']; // IMG=RIGHT|LEFT $text = preg_replace("#\((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "''\\2 . str_replace(' ', '%20', '\\2') . ''", $text);Что такое \\1 и \\2 в первой процедуре? Места где должны находиться вставляемые фрагменты или как?$patterns[] = "#\:$uid\]([^?](?:[^\[]+|\[(?!url))*?)\[/img:$uid\]#si"; Выделенные места тоже немогу понять для чего, из второй процедуры.$text = preg_replace("#\\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "':$uid]'\\2 . str_replace(' ', '%20', '\\2') . '[/img:$uid]'", $text); - аналогично
Po$amax@ Опубликовано 31 мая, 2009 Жалоба Опубликовано 31 мая, 2009 попробуй в конце новый парсер дописать, напримерfunction parse_img($text){ $a = '/\[img=(left|right|center)\](*.?)\[\/img\]/is'; $r = ''; return preg_replace($a, $r, $text);}вроде правильно написал ), но можешь потом *.? заменить на свое или добавить свое...ЗЫ. функция возвращает готовый результат
JSTQ Опубликовано 2 июня, 2009 Автор Жалоба Опубликовано 2 июня, 2009 Закройте тему, пару ошибок в коде исправил все заработало, еще и center сделал)
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти