Интеграция bbcode со своим сайтом

Форум для авторов модов для phpBB 2.0.x. Здесь можно попросить помощи в разработке у коллег.

Интеграция bbcode со своим сайтом

Сообщение baa-lamb 10.11.2005 16:05

Есть ли готовые решения для интеграции со своим сайтом?
Постараюсь немного подробнее объяснить:
есть некий "движок" написанный мной, он использует MySQL, форум использует ту же БД и находится в каталоге /forum/. Хочется в разделе администрирования моего движка добавить возможность при заполнении форм использовать bbcode. Как это реализовать?
baa-lamb
phpBB 1.0.0
 
Сообщения: 9
Зарегистрирован: 10.11.2005 15:58


Сообщение DISA 15.01.2006 21:36

таже беда
DISA
phpBB 1.0.0
 
Сообщения: 6
Зарегистрирован: 15.01.2006 21:00

Сообщение Xpert 15.01.2006 22:02

Напишите свой парсер bbcode и используйте его. В этом нет ничего сложного.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Xpert
phpBB Guru
 
Сообщения: 5636
Зарегистрирован: 13.03.2004 21:27
Откуда: msk.ru

Сообщение avm 16.01.2006 6:16

Можно использовать готовые, но нет и среди них совершенства
выделенный сервер по цене обычного хостинга - менее 150 рублей в месяц
Благодарности принимаются в Яндекс.Деньгах на счет 4100143316948
Аватара пользователя
avm
phpBB 2.0.13
 
Сообщения: 613
Зарегистрирован: 16.01.2005 10:40
Откуда: Москва

Сообщение ETZel 16.01.2006 9:16

А почему нельзя использовать bbcode.php/bbcode.tpl из форумной поставки?
Просто на каждок поле с bbcode надо будет завести поле с bbode_uid'ом

Добавлено спустя 3 минуты 56 секунд:

И это проще, чем писать свой парсер!
Аватара пользователя
ETZel
phpBB 1.4.4
 
Сообщения: 97
Зарегистрирован: 03.01.2006 10:47
Откуда: Челябинск

Сообщение baa-lamb 16.01.2006 10:16

ETZel писал(а):А почему нельзя использовать bbcode.php/bbcode.tpl из форумной поставки?
Просто на каждок поле с bbcode надо будет завести поле с bbode_uid'ом
И это проще, чем писать свой парсер!
если расскажешь "как" это сделать или дашь линк на вменяемую инструкцию - с удовольствием займусь!
baa-lamb
phpBB 1.0.0
 
Сообщения: 9
Зарегистрирован: 10.11.2005 15:58

Сообщение avm 16.01.2006 12:27

ETZel писал(а):А почему нельзя использовать bbcode.php/bbcode.tpl из форумной поставки?
потому что он еще более корявый и неудобный чем даже то что я привел в ссылках.
выделенный сервер по цене обычного хостинга - менее 150 рублей в месяц
Благодарности принимаются в Яндекс.Деньгах на счет 4100143316948
Аватара пользователя
avm
phpBB 2.0.13
 
Сообщения: 613
Зарегистрирован: 16.01.2005 10:40
Откуда: Москва

Сообщение ETZel 16.01.2006 13:30

avm, ну знаете ли, с вашими запросами только свой парсер и писать (я как представлю, сколько времени займет тестирование и доведениедо ума.... :? сразу понимаю, что готовые - не так уж плохи)
Парсер из phpBB вполне хорош, если не заглядывать в исходники ;) А в контексте интеграции с форумом - так вообще единственный разумный вариант. (привлекать сторонние исходники, ссылки на которые вы указали, - это неизящно)

Добавлено спустя 2 минуты 58 секунд:

baa-lamb, я напишу инструкцию.
Аватара пользователя
ETZel
phpBB 1.4.4
 
Сообщения: 97
Зарегистрирован: 03.01.2006 10:47
Откуда: Челябинск

Сообщение baa-lamb 16.01.2006 14:05

ETZel
а нет ли оптыа прикручивания к своим движкам аутентификации phpBB, а то опять же можно самому написать свою процедуру авторизации, но хотенлось бы, чтобы пользователи не вводили свои имя пользователя и пароль по два раза.
baa-lamb
phpBB 1.0.0
 
Сообщения: 9
Зарегистрирован: 10.11.2005 15:58

Сообщение [R: R@m$e$ :U] 16.01.2006 14:50

baa-lamb
к самопалу есть.... а еще скрещивал аутентификацию с cute news... =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1503
Зарегистрирован: 16.01.2005 13:04
Откуда: Novosibirsk,RU

Сообщение baa-lamb 16.01.2006 15:07

[R: R@m$e$ :U]
делись!
baa-lamb
phpBB 1.0.0
 
Сообщения: 9
Зарегистрирован: 10.11.2005 15:58

Сообщение ETZel 16.01.2006 15:54

Инструкция для baa-lamb:
Исхожу из предположения, что поля с bbcode будут редактироваться
Для начала - грязный хак (для чистого надо больше информации)
Код: Выделить всё
#OPEN
includes/bbcode.php
#FIND
   $tpl_filename = $template->make_filename('bbcode.tpl');
#REPLACE
   if (defined('EXTERNAL_BBCODE_TPL'))
   {
      $tpl_filename = EXTERNAL_BBCODE_TPL;
   }
   else
   {
      $tpl_filename = $template->make_filename('bbcode.tpl');
   }

Во всех файлах, использующих bbcode:
Код: Выделить всё
   define('IN_PHPBB', true);
   require_once('./forum/includes/bbcode.php');

В тех файлах, где будет отображаться результат:
Код: Выделить всё
define('EXTERNAL_BBCODE_TPL', './forum/templates/subSilver/bbcode.tpl'); // путь к любому вменяемому bbcode.tpl, соответствующему оформлению страницы
$lang = array('Quote' => 'Цитата', 'wrote' => '%s писал(а)', 'Code' => 'Код'); // это можно опустить, если нет error_reporting(E_ALL) и не используются quote/code

перед помещением в БД (переменных $message и $bbcode_uid):
Код: Выделить всё
$message = preg_replace(array('#&(?!(\#[0-9]+;))#', '#<#', '#>#', '#"#'), array('&amp;', '&lt;', '&gt;', '&quot;'), $message);
if (empty($bbcode_uid))
{
   $bbcode_uid = make_bbcode_uid();
}
$message = bbencode_first_pass($message, $bbcode_uid);

перед отображением:
Код: Выделить всё
$message = nl2br(bbencode_second_pass($message, $bbcode_uid));

Перед редактированием:
Код: Выделить всё
$message = preg_replace('/\:(([a-z0-9]:)?)' . $bbcode_uid . '/s', '', $message);
$message = str_replace(array('<', '>', '<br />', array('&lt;', '&gt;', "\n"), $message);


Про прикручивание аутентификации:
Мой движок - это и есть phpBB (никаких папок "/forum"). Все, что пишу, делаю в рамках phpBB (хотя внешне это не всегда очевидно). Мне phpbb тем и нравится, что его можно быстро довести до приличной CMS
А смешивать 2 движка (например, Cute News с phpBB) - это чудовищно! Две независимые архитектуры, дублирующиеся подсистемы, разные стандарты кодирования - кошмар...
Аватара пользователя
ETZel
phpBB 1.4.4
 
Сообщения: 97
Зарегистрирован: 03.01.2006 10:47
Откуда: Челябинск

Сообщение [R: R@m$e$ :U] 16.01.2006 17:06

baa-lamb
чем? 0_о
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1503
Зарегистрирован: 16.01.2005 13:04
Откуда: Novosibirsk,RU

Сообщение baa-lamb 16.01.2006 17:16

[R: R@m$e$ :U]
опытом прикручивания к своим движкам аутентификации phpBB
baa-lamb
phpBB 1.0.0
 
Сообщения: 9
Зарегистрирован: 10.11.2005 15:58

Сообщение [R: R@m$e$ :U] 16.01.2006 19:29

а чего им делится... login.php и includes/session.php на растерзание... =))) вырезав нужную часть из login.php... и переиначев ее под классы cute news'а, он стал работать =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1503
Зарегистрирован: 16.01.2005 13:04
Откуда: Novosibirsk,RU

След.

Вернуться в Для авторов (phpBB 2.0.x)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0