Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Кнопочки.
 
 автор: indig0   (09.01.2012 в 22:24)   письмо автору
 
 

Помогите пожалуйста сделать кнопки. Например, как на форуме нажимаешь на "
"
И эти тэги появляются в поле. Что для этого нужно ? Через php вообще ли это делается? Есть мысли по этому поводу?

  Ответить  
 
 автор: Slo_Nik   (09.01.2012 в 22:39)   письмо автору
 
   для: indig0   (09.01.2012 в 22:24)
 

[поправлено модератором]

  Ответить  
 
 автор: ladan   (09.01.2012 в 23:15)   письмо автору
 
   для: Slo_Nik   (09.01.2012 в 22:39)
 

о использовании bbcode ничего не знаю, но хотелось бы что-то вывести на экран с помощью него

и все сайты в нете пишут об одном:

Сам BBCode по стилю очень похож на HTML, но теги в нем заключаются в квадратные скобки [ … ], а не в < … >.

» Как сделать текст жирным, курсивным или подчеркнутым?
BBCode включает теги для быстрого изменения стиля основного текста. Сделать это можно следующими способами:


<?
Чтобы сделать текст жирным
заключите его в теги [b][/b]. Пример

[
b]Привет[/b]

выдаст Привет
Для подчеркивания используйте теги 
[u][/u]. Пример:

[
u]Доброе утро[/u]

выдаст Доброе утро
Курсив делается тегами 
[i][/i]. Пример:

Это [i]здорово![/i]

выдаст Это здорово!

?>


так делал, но текст отображается как обычно, а по краям квадратные скобки, ничего не изменяет этот bbcode. Кажись это через Javascript такое возможно? :)

  Ответить  
 
 автор: Slo_Nik   (09.01.2012 в 23:25)   письмо автору
 
   для: ladan   (09.01.2012 в 23:15)
 

ну да, в базу пишите в таком виде, а вот при выводе из базы Вы эти самые bbcode интерпретируете
вот как то так

<?php 
$text 
"тут у Вас хранится [ b ]текст[ /b ] статьи, например....";
/* теперь переводим bbcode в понятный браузеру тег */
$text preg_replace("|\[b\](.+)\[\/b\]|is""<b>\\1</b>"$text);
echo 
$text/* на выходе получаем слово "текст" жирным шрифтом ))) */
?>


p.s. небольшая погрешность есть, пришлось вставить пробелы в [ b ] и в [ /b ], так как по другому не показывало в строке )))

  Ответить  
 
 автор: ladan   (09.01.2012 в 23:41)   письмо автору
 
   для: Slo_Nik   (09.01.2012 в 23:25)
 

да, все работает, спасибо :)

  Ответить  
 
 автор: Slo_Nik   (09.01.2012 в 23:45)   письмо автору
 
   для: ladan   (09.01.2012 в 23:41)
 

Пожалуйста, пользуйтесь на здоровье )))

  Ответить  
 
 автор: indig0   (10.01.2012 в 07:00)   письмо автору
 
   для: Slo_Nik   (09.01.2012 в 23:25)
 

Можете сказать с него начать? пошагово

  Ответить  
 
 автор: Slo_Nik   (10.01.2012 в 11:38)   письмо автору
 
   для: indig0   (10.01.2012 в 07:00)
 

не понял, что ВЫ имеете ввиду?

  Ответить  
 
 автор: Sfinks   (10.01.2012 в 16:33)   письмо автору
 
   для: Slo_Nik   (10.01.2012 в 11:38)
 

Дело в том, что начал тему и ответил вам "да, все работает, спасибо" не один человек, а разные. Поэтому первый не понимает о чем вы говорите.

  Ответить  
 
 автор: Slo_Nik   (10.01.2012 в 16:39)   письмо автору
 
   для: Sfinks   (10.01.2012 в 16:33)
 

Я это прекрасно понимаю, поэтому и спросил автора, что он имеет ввиду, что ему не понятно.

  Ответить  
 
 автор: Sfinks   (10.01.2012 в 16:31)   письмо автору
 
   для: indig0   (10.01.2012 в 07:00)
 

Начать стоит с того чтобы получить хоть минимальное представление хотя бы о html разметке. О том как вообще некрасивый текст без смайликов превращается в цветные менюшки и кнопочки.

  Ответить  
 
 автор: indig0   (10.01.2012 в 19:07)   письмо автору
 
   для: Sfinks   (10.01.2012 в 16:31)
 

Я знаю эти теги <font> <b> <em> и так далее. Просто с чего начать с начало про писать? Вот мне кто-то сказал нужно bbcode скачивать, что с ним делать?

  Ответить  
 
 автор: Slo_Nik   (10.01.2012 в 19:36)   письмо автору
 
   для: indig0   (10.01.2012 в 19:07)
 

я Вам дал ссылку на код javascript, который создаёт нужные Вам "кнопочки"
По ссылке, правда на буржуйском, написано как подключить этот код в Ваш html, чтобы Вы могли применять bbcode
В таком виде, как будет сформатирован текст, скажем в текстовой области формы, Вы его записываете в базу данных.
Когда Вы показываете пользователю этот текст из базы, то для того,что бы текст отображался как положено, нужно bbcode интерпретировать в теги html, как это делается я показал выше

  Ответить  
 
 автор: ladan   (11.01.2012 в 21:29)   письмо автору
 
   для: Slo_Nik   (10.01.2012 в 19:36)
 

можете пожалуйста объяснить в чем разница между слешами и просто прямыми палочками в первом параметре функции preg_replace


"|\[b\](.+)\[\/b\]|is"


После первой кавычки у вас прямая палочка и палочка в конце перед i. Если за место них поставить слеши, то ничего не поменяется, функция будет правильно обрабатывать.

В инете нигде нету инфы, чтоб можно было почитать о том как можно составлять свою замену, например, зачем нужны (.+) или {2,4} и подобные вещи.. Приходится догадываться и методом тыка пока не заработает :(

  Ответить  
 
 автор: Slo_Nik   (11.01.2012 в 22:00)   письмо автору
 
   для: ladan   (11.01.2012 в 21:29)
 

Вертикальные "палочки" обозначают границу регулярного выражения. Использовать можно и другие символы, например # или ~

В инете нигде нету инфы, чтоб можно было почитать о том как можно составлять свою замену, например, зачем нужны (.+) или {2,4} и подобные вещи.. Приходится догадываться и методом тыка пока не заработает :(

  Ответить  
 
 автор: ladan   (11.01.2012 в 22:05)   письмо автору
 
   для: Slo_Nik   (11.01.2012 в 22:00)
 

хы, и правда есть:) спасибо большое, пошел читать

  Ответить  
 
 автор: ladan   (12.01.2012 в 13:39)   письмо автору
 
   для: ladan   (11.01.2012 в 22:05)
 

-

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования