Интернет, компьютеры, софт и прочий Hi-Tech

Подписаться через RSS2Email.ru

Быстрый старт

Установка xBBEditora

Организовав обработку BBCode нужно подумать об удобствах пользователей, и дать им какой-нибудь редактор.

xBB может работать с ЛЮБЫМ редактором!!! Но если вы решили использовать xBBEditor, то должны сделать следующее:

Допустим, что код вашей формы, для редактирования текста выглядит так:

HTML
  1. <form method="post" action="my_action">
  2. <textarea name="my_textarea">
  3. Какой-то [i]BBCode[/i]
  4. </textarea>
  5. <input type="submit" value="Отправить" />
  6. </form>

Присвойте своей textarea какой нибудь уникальный id. Например, так:

HTML
  1. <form method="post" action="my_action">
  2. <textarea name="my_textarea" id="my_textarea_id">
  3. Какой-то [i]BBCode[/i]
  4. </textarea>
  5. <input type="submit" value="Отправить" />
  6. </form>

Где нибудь выше своей формы вставьте код JavaScript:

Javascript
  1. <script type="text/javascript" src="/ваш/путь/bbcode/xbb.js.php"></script>
  2. <script type="text/javascript">
  3. XBB.path = '/ваш/путь/bbcode'; // путь к либе
  4. XBB.textarea_id = 'my_textarea_id'; // идентификатор textarea
  5. XBB.area_width = '700px'; // ширина окошка редактора
  6. XBB.area_height = '400px'; // высота окошка редактора
  7. XBB.state = 'plain'; // 'plain' or 'highlight'
  8. // Одна из следующих строк должна быть раскомменчена
  9. XBB.lang = 'ru_utf8'; // русская локаль UTF-8
  10. // XBB.lang = 'ru_cp1251'; // русская локаль windows-1251
  11. </script>

Где нибудь ниже своей формы вставьте код:

Javascript
  1. <script type="text/javascript">XBB.init();</script>

Теперь идите на страницу с формой и смотрите, как чего работает. Well

P.S. Дополнительную информацию по установке и настройке редактора можно найти в FAQ. Ненужные функции, использование парсера и редактора.
Биржа долевых инвестиций SIMEX.

Последнее редактирование: 2011-01-27 06:53:28

Метки материала: быстрый старт, xbbeditor, редактор bbcode, javascript, textarea, form, установка по


130 комментариев

Последние десять комментариев:

07.12.2016 16:31:15 #
Google Chrome Гость zuizul
https://www.youtube.com/watch?v=NshcyUmLJOo
10.02.2013 16:30:43 #
Mozilla Firefox dima
Вот здесь обсуждается: http://xbb.uz/forums/bbcode..._XBB_Editor
10.02.2013 13:34:11 #
Mozilla Firefox Гость Алекса
Скажите пожайлуйста, а как на одной странице поставить несколько текстовых полей с редактором.
11.03.2012 01:03:00 #
Mozilla Firefox dima
Во-первых, исходный BBCode нужно сохранять. Из базы брать его только для редактирования. Это никак не увеличит нагрузку на сервер.
 
Во-вторых, если у вас уже есть куча HTML-кода без исходного BBCode, то никакими ухищрениями этот последний не восстановить, так как трансляция BBCode->HTML неоднозначна.
 
Попробуйте просто заменить все угловые скобки на квадратные. В общем и целом должно получиться. А для всех новых новостей сохраняйте исходный BBCode.
10.03.2012 11:21:11 #
Opera Гость Voldemar
Здравствуйте, подскажите как сделать обратную перекодировку из html в BBCode?
Более подробно: использую Ваш скрипт в форме добавления новостей, в целях снижения нагрузки на сервер в бд пишется текст в html формате и для изменения новости необходимо сделать обратную функцию к get_html - get_bbCode которая будет html теги заменять на бб коды.
 
напишете код этой функции плиззз, заранее спасибо
14.02.2012 01:23:31 #
Mozilla Firefox dima
если ПКМ - в контекстном меню мышкой выбрать "Вставить" и будет вставлен текст  - данные об оставшихся символах не меняются.

Добавьте для текстарии атрибуты:
Text
onpaste="bb.onChange(this)" oninput="bb.onChange(this)"
13.02.2012 20:23:26 #
Mozilla Firefox Гость AVX
упс... внутри кода php нельзя же выделение сделать, лишние  b /b вставил.
13.02.2012 20:21:15 #
Mozilla Firefox Гость AVX
Огромное спасибо!
ещё долго копался бы Well Сейчас всё работает.
Есть мелкий баг (или фича?) - если ПКМ - в контекстном меню мышкой выбрать "Вставить" и будет вставлен текст  - данные об оставшихся символах не меняются. Впрочем, стоит просто щелкнуть мышкой в textarea - и всё ОК. Всё равно, главное - индикация оставшихся символов для пользователя. А уж если умышленно лишнего навставлял - сервер обломает Well
 
Кстати, вынес лимит в файлик xbbeditor.config.php
PHP
// лимит текста в редакторе
$x_textlimit = '2000';

а в коде xbb.php сделал так:
PHP

// Основные смайлики, предлагаемые на выбор пользователя
phpArray2Javascript($smiles);
echo 'bb.smiles=' . $smiles . ';';
echo 'bb.textlimit=' . $x_textlimit . ';';

~ отредактировано dima
Убрал лишние [b]
13.02.2012 19:49:54 #
Mozilla Firefox dima
Две функции (onKeyPress и onChange) добавились в bbcode/bbcode.lib.js
Вот прямая ссылка: http://xbb.uz/files/bbcode/...code.lib.js
13.02.2012 18:58:01 #
Mozilla Firefox Гость AVX
разобрался, нашёл изменения, исправил у себя. (так понял, что изменился только xbb.php) - но не работает у меня. При загрузке текст "осталось символов: 1000" становится, т.е. один раз меняется. А дальше - никак. Исходный код прямо во фрейме смотрю - одинаково. Или я что-то упустил Not so
 
Может, подскажете, в каких ещё местах что-то менялось в xbb.php?

Оставьте, пожалуйста, свой комментарий к публикации

Представиться как     Антибот:
   

Просьба не постить мусор. Если вы хотите потестить xBB, воспользуйтесь кнопкой предварительного просмотра на панели инструментов xBBEditor-а.


© 2007-2017, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.