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 сделал) Цитата
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.