PHP/MySQL | ббкоди и штмл?
Здравствуйте. Столкнулся со проблемой сделав на сайте бб коды
И если я хочу отредактировать свой пост то они просто становлатся штмл кодом как это исправить
function bb($mes = '')
{
$mes = strip_tags($mes);
$mes = preg_replace('#\[b\](.*?)\[/b\]#si', '<span style="font-size: 20px">\1</span>', $mes);
$mes = preg_replace('#\[img\](.*?)\[/img\]#si', '<a href=\"\1\" title=\"Нажмите для масштабирования\"><img src=\"\1\" width=\"100\" height=\"100\" alt=\"Картинка\"/></a>', $mes);
$mes = preg_replace('#\[i\](.*?)\[/i\]#si', '<i>\1</i>', $mes);
$mes = preg_replace('#\[u\](.*?)\[/u\]#si', '<u>\1</u>', $mes);
$mes = preg_replace('#\[s\](.*?)\[/s\]#si', '<strike>\1</strike>', $mes);
$mes = preg_replace('#\[red\](.*?)\[/red\]#si', '<font color="#ff7900">\1</font>', $mes);
$mes = preg_replace('#\[green\](.*?)\[/green\]#si', '<font color="#00FF00">\1</font>', $mes);
$mes = preg_replace('#\[blue\](.*?)\[/blue\]#si', '<font color="#0000FF">\1</font>', $mes);
$mes = preg_replace('#\[url=(.*?)\](.*?)\[/url\]#si', '<a href="\1">\2</a>', $mes);
$mes = preg_replace('#\[cit\](.*?)\[/cit\]#si', '<div class="cit">\1</div>', $mes);
return $mes;
}
function html2bb($mes = '')
{
$mes = preg_replace('#\<span style=\"font-size: 20px\"\>(.*?)\</span\>#si', '<strong>\1</strong>', $mes);
$mes = preg_replace('#\[img\](.*?)\[/img\]#si', '<a href=\"\1\" title=\"Нажмите для масштабирования\"><img src=\"\1\" width=\"100\" height=\"100\" alt=\"Картинка\"/></a>', $mes);
$mes = preg_replace('#\<i\>(.*?)\</i\>#si', '<em>\1</em>', $mes);
$mes = preg_replace('#\<u\>(.*?)\</u\>#si', '<span style="text-decoration:underline;">\1</span>', $mes);
$mes = preg_replace('#\<strike\>(.*?)\</strike\>#si', '\1', $mes);
$mes = preg_replace('#\<font color=\"\#ff7900\"\>(.*?)\</font\>#si', '<span style="color:#ff0000;">\1</span>', $mes);
$mes = preg_replace('#\<font color=\"\#00FF00\"\>(.*?)\</font\>#si', '<span style="color:#00bb00;">\1</span>', $mes);
$mes = preg_replace('#\<font color=\"\#0000FF\"\>(.*?)\</font\>#si', '<span style="color:#0000bb;">\1</span>', $mes);
$mes = preg_replace('#\<a href=\"(.*?)\"\>(.*?)\</a\>#si', '[url=\1]\2[/url]', $mes);
$mes = preg_replace('#\[cit\](.*?)\[/cit\]#si', '<div class="cit">\1</div>', $mes);
return $mes;
}
И если я хочу отредактировать свой пост то они просто становлатся штмл кодом как это исправить
function bb($mes = '')
{
$mes = strip_tags($mes);
$mes = preg_replace('#\[b\](.*?)\[/b\]#si', '<span style="font-size: 20px">\1</span>', $mes);
$mes = preg_replace('#\[img\](.*?)\[/img\]#si', '<a href=\"\1\" title=\"Нажмите для масштабирования\"><img src=\"\1\" width=\"100\" height=\"100\" alt=\"Картинка\"/></a>', $mes);
$mes = preg_replace('#\[i\](.*?)\[/i\]#si', '<i>\1</i>', $mes);
$mes = preg_replace('#\[u\](.*?)\[/u\]#si', '<u>\1</u>', $mes);
$mes = preg_replace('#\[s\](.*?)\[/s\]#si', '<strike>\1</strike>', $mes);
$mes = preg_replace('#\[red\](.*?)\[/red\]#si', '<font color="#ff7900">\1</font>', $mes);
$mes = preg_replace('#\[green\](.*?)\[/green\]#si', '<font color="#00FF00">\1</font>', $mes);
$mes = preg_replace('#\[blue\](.*?)\[/blue\]#si', '<font color="#0000FF">\1</font>', $mes);
$mes = preg_replace('#\[url=(.*?)\](.*?)\[/url\]#si', '<a href="\1">\2</a>', $mes);
$mes = preg_replace('#\[cit\](.*?)\[/cit\]#si', '<div class="cit">\1</div>', $mes);
return $mes;
}
function html2bb($mes = '')
{
$mes = preg_replace('#\<span style=\"font-size: 20px\"\>(.*?)\</span\>#si', '<strong>\1</strong>', $mes);
$mes = preg_replace('#\[img\](.*?)\[/img\]#si', '<a href=\"\1\" title=\"Нажмите для масштабирования\"><img src=\"\1\" width=\"100\" height=\"100\" alt=\"Картинка\"/></a>', $mes);
$mes = preg_replace('#\<i\>(.*?)\</i\>#si', '<em>\1</em>', $mes);
$mes = preg_replace('#\<u\>(.*?)\</u\>#si', '<span style="text-decoration:underline;">\1</span>', $mes);
$mes = preg_replace('#\<strike\>(.*?)\</strike\>#si', '
$mes = preg_replace('#\<font color=\"\#ff7900\"\>(.*?)\</font\>#si', '<span style="color:#ff0000;">\1</span>', $mes);
$mes = preg_replace('#\<font color=\"\#00FF00\"\>(.*?)\</font\>#si', '<span style="color:#00bb00;">\1</span>', $mes);
$mes = preg_replace('#\<font color=\"\#0000FF\"\>(.*?)\</font\>#si', '<span style="color:#0000bb;">\1</span>', $mes);
$mes = preg_replace('#\<a href=\"(.*?)\"\>(.*?)\</a\>#si', '[url=\1]\2[/url]', $mes);
$mes = preg_replace('#\[cit\](.*?)\[/cit\]#si', '<div class="cit">\1</div>', $mes);
return $mes;
}
Модуль для какого движка?
[DCMS] YURA007 (06.09.2017 в 00:19)
Модуль для какого движка?
Модуль для какого движка?
Типа когда то был стронг
King USA, ясно, я думал для DMCS
значит после редактирования функция ббкодов убирается, там и копай
Как на выводе используй
а поняла.) при ред. обрабатывает наверно фильтр переменную , обрезая символы, которые и перестают быть ббкодаами
punkromain, смотри
Пишу допустим пост в форуме
Из ббкодами жму все норм показуеть но если жму ред. Пост то ббкод становится штмел кодом как это исправить чтобы не наделать глупостей
Пишу допустим пост в форуме
Из ббкодами жму все норм показуеть но если жму ред. Пост то ббкод становится штмел кодом как это исправить чтобы не наделать глупостей
409212064, да бб код становится штмел кодом типа из [/br] получается </br> но это только когда редактируешь пост
King USA (06.09.2017 в 19:43)
punkromain, смотри
Пишу допустим пост в форуме
Из ббкодами жму все норм показуеть но если жму ред. Пост то ббкод становится штмел кодом как это исправить чтобы не наделать глупостей
punkromain, смотри
Пишу допустим пост в форуме
Из ббкодами жму все норм показуеть но если жму ред. Пост то ббкод становится штмел кодом как это исправить чтобы не наделать глупостей
Ак ты html сразу сохраняешь в файл или в базу, сохраняй bb, а потом уже выводи используя функцию bb. Лично я не вижу ничего плохого в том, чтобы хранить код в bb и каждый раз выводить, используя функцию.
Стр.: 1, 2