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); - аналогично Ссылка на комментарий
NAT Опубликовано 31 мая, 2009 Жалоба Поделиться Опубликовано 31 мая, 2009 легче поискать на phpbbguru Ссылка на комментарий
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 сделал) Ссылка на комментарий
X-tender Опубликовано 3 июня, 2009 Жалоба Поделиться Опубликовано 3 июня, 2009 *.?правильно будет .*? Ссылка на комментарий
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти