PHP/MySQL | помгите из ббкодами
Доброй всем ночи, что я не так делаю из бб кодами
function bb($mes = '')
{
$mes = strip_tags($mes);
$mes = preg_replace("&", "&", $mes);
$mes = preg_replace("\[br\]", "<br/>", $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);
return $mes;
}
function html2bb($mes = '')
{
$mes = preg_replace("&", "&", $mes);
$mes = preg_replace("\<br/\>", "
", $mes);
$mes = preg_replace('#\<span style=\"font-size: 20px\"\>(.*?)\</span\>#si', '<strong>\1</strong>', $mes);
$mes = preg_replace('#\<a href=\"(.*?)\" title=\"Нажмите для масштабирования\"\>\<img src=\"(.*?)\" width=\"50\" height=\"50\"\ alt=\"Картинка\"/>\</a\>#si', '
', $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);
return $mes;
}
И вот такую ошибку кидаеть
Warning: preg_replace(): No ending delimiter '&' found in /var/www/wan562/data/www/site/system/function.php on line 147 Warning: preg_replace(): Delimiter must not be alphanumeric or backslash in /var/www/wan562/data/www/site/system/function.php on line 149
function bb($mes = '')
{
$mes = strip_tags($mes);
$mes = preg_replace("&", "&", $mes);
$mes = preg_replace("\[br\]", "<br/>", $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);
return $mes;
}
function html2bb($mes = '')
{
$mes = preg_replace("&", "&", $mes);
$mes = preg_replace("\<br/\>", "
", $mes);
$mes = preg_replace('#\<span style=\"font-size: 20px\"\>(.*?)\</span\>#si', '<strong>\1</strong>', $mes);
$mes = preg_replace('#\<a href=\"(.*?)\" title=\"Нажмите для масштабирования\"\>\<img src=\"(.*?)\" width=\"50\" height=\"50\"\ alt=\"Картинка\"/>\</a\>#si', '

$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);
return $mes;
}
И вот такую ошибку кидаеть
Warning: preg_replace(): No ending delimiter '&' found in /var/www/wan562/data/www/site/system/function.php on line 147 Warning: preg_replace(): Delimiter must not be alphanumeric or backslash in /var/www/wan562/data/www/site/system/function.php on line 149
Экранируй бэкслэшем символы & в первых регулярках обеих функций
\&
\&
King USA,
Писал по памяти, но в принципе должно работать, остальные bb делай по примеру этих.. Пробелы только убери.
________
посл. ред. 04.09.2017 в 01:10; всего 6 раз(а); by Hooligan
Писал по памяти, но в принципе должно работать, остальные bb делай по примеру этих.. Пробелы только убери.
function bb($bb)
{
$bb=preg_replace("/[b ](.+)[/ b]/Usi","<strong>1</strong>",$bb);
$bb=preg_replace("/[color=(.*)](.*)[/color]/Usi", "<font color='1'>2</font>", $bb);
$bb=preg_replace("/[img=(.*)]/Usi","<img src='1' border="0"/>",$bb);
$bb=preg_replace("/[b r]/Usi","<br>",$bb);
$bb=preg_replace("/[h r]/Usi","<hr>",$bb);
$bb=preg_replace("/[c enter](.*)[/c enter]/Usi","<div align=center>1</div>",$bb);
return $bb;
}
________
посл. ред. 04.09.2017 в 01:10; всего 6 раз(а); by Hooligan
Hooligan, не то в меня такие были сейчас делаю чтобы когда ред. Пост в смс не переводился код штмл понял очем я?
Надо не новые написать а просто исправить те что есть у меня
________
посл. ред. 04.09.2017 в 10:51; всего 1 раз(а); by King USA
Надо не новые написать а просто исправить те что есть у меня
________
посл. ред. 04.09.2017 в 10:51; всего 1 раз(а); by King USA
King USA, Я понимаю что ты из Украины и Русский язык не очень знаешь, но можешь попробовать получше объяснить, а то я нихрена не понял..
Hooligan, надо те что я написал исправить ббкоди