//если используем mysql
$search = array();
$replace = array();
$result = mysql_query("SELECT * FROM `bb_code`") or die("error");
while ($row = mysql_fetch_assoc($result)) {
$search[] = $row["replace"];
$replace[] = $row["what"];
}
mysql_free_result($result);
$text = str_replace($search, $replace, $text);
//используем mysqli
$search = array();
$replace = array();
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$result = mysqli->query("SELECT * FROM `bb_code`") or die("error");
while ($row = $result->fetch_assoc()) {
$search[] = $row["replace"];
$replace[] = $row["what"];
}
$result->close();
$text = str_replace($search, $replace, $text);
phpBB своими руками, или как не гемороить мозг
Но когда пошел искать исходники, гугл замолчал и посылал не туда куда нужно.
Сначала думал что мб сверстать подобие phpBB своими руками, но незнание JavaScript сразу дало свой удар.
Что мне нужно дабы прикрутить к сайту (собственного производства) данную очень простую функцию для пользователей?
http://www.phpbb.com/downloads/
Да и не понял я, при чем тут вобще JavaScript.
И так, на правах оффтопа - phpBB довольно отвратный продукт индуского производства ;)
плохо искали.
Да и не понял я, при чем тут вобще JavaScript.
И так, на правах оффтопа - phpBB довольно отвратный продукт индуского производства ;)
т.к. давать возможность отвечать ему с возможность html и script очень глупое действие...
javascript нужен был для переноса "когда из панели сразу в поле текста".
Просто у меня идея пустить собственную версию, которую можно будет внедрить прям в код, не лома ничего на сайте, и не перестраивая глобально сам код...
ЗЫ...
Это не то что мне нужно...
Моя цель к сайту flame-game.com.ua прикрутить такую возможность как на форуме "используя phpBB или собственноручно склёпаный аналог.
Это все не так трудно как кажется... используя str_replace(), а замену интегрировать вместе с массивом (мона как и MySQL так и обычный статический вводимый прям в код) можно спокойно заменять подобия [\b\] на обычный html код <b>, при этом юзвер или хацкер не получит доступа в потайные места.
Подскажите скрипт в котором "Я нажимаю на иконку или текст и автоматически значение переносится в textarea?
Здесь я уже кидал собственно написанный скрипт для кроссбраузерной (для 3 браузеров) корректной работы и вставки.
Ещё я бы порекомендовал научиться писать сообщения, потому что такая структура сообщений просто бесит. Нифига не понятно с первого раза, никакой четкости.
UAS большое спасибо, суть вашего кода я понял, попробую интегрировать к своему сайту)
было бы всё так просто... регулярки наше всё
Уже опробовал на функции [/img\] [/img\] самое интересное, что заработало правильно...
Функция str_repoce(); не выполняется должным образом
скобки [void] оно просто заменять на <void> не трогая самую внутреннею часть кода.
сейчас приведу код :
Код:
$repl = mysqli_query($conn,"SELECT * FROM `BB_code`");
$number = mysqli_num_rows($repl);
$row = mysqli_fetch_array($repl);
for ($i = 0; $i < $number; $i++)
{
$text = str_replace($row['replace'][$i],$row['what'][$i],$text);
}
$number = mysqli_num_rows($repl);
$row = mysqli_fetch_array($repl);
for ($i = 0; $i < $number; $i++)
{
$text = str_replace($row['replace'][$i],$row['what'][$i],$text);
}
где $row['replace'] = это пример поиска
а $row['what'] = это заменить на "что"
кусок кода Java я приводить не буду, т.к. он очень громоздкий.
Если вы все равно не можете въехать "что на пашет" могу залить тестовую версию на сайт, дабы вы сами смогли понять, как именно оно не пашет...
в базе содержатся такие вещи:
replace = :angel:
what = <img src="image/smile/aa.gif" alt="Ангел" alt="Ангел"/>
ну и так далее, название для поиска в тексте, и замена найденного, на такую-то строку
После фикса, с разрешения UAS(JavaScript ваш, воспользовался по совету, он заработал так как надо), выложу весь рабочий код, с смайлами, правкой текста, бд.
P.S.: с моим кодом можете делать, что хотите, на то и выложен он на публику.
Цитата: UAS
Дык вы проверьте, то ли вам возвращает запрос. Потому что логически все верно. Хотя, особенностей mysqli не знаю, т.к. не работал.
P.S.: с моим кодом можете делать, что хотите, на то и выложен он на публику.
P.S.: с моим кодом можете делать, что хотите, на то и выложен он на публику.
Вот я тоже смотрел, все логически верно.
Пробовал ещё воспользоваться другими функциями замены от str_ireplace до
preg_replace, ничего не помогло.
Но недавно запихнул прямую замену при выводе сообщений, а не как первый раз - добавлять в базу сразу размеченную страницу
Код:
$text = str_replace(":angel:","<img src='image/smile/aa.gif' alt='Ангел' alt='Ангел'/>",$row['text']);
Но когда использую массив с mysql то выбивает ерроры или заменяет не корректно(в зависимости что заменять смайл или разметку).
Единая разница между прямым текстом и массивом во время замены.
Это отсутствие скобок "", но как я помню, скобки только дают команду что внутри них текст, по этому разницы быть не должно.
Свежая инфа:
при добавлении кода:
Код:
for($i = 0; $i < $numbs; $i++)
{
$rower = mysqli_fetch_array($connect); // ЗДЕСЬ ЗАКОНЧИЛ
$sear = $rower['replace'];
$chang = $rower['what'];
$text = str_replace($sear, $chang, $row['text']);
}
{
$rower = mysqli_fetch_array($connect); // ЗДЕСЬ ЗАКОНЧИЛ
$sear = $rower['replace'];
$chang = $rower['what'];
$text = str_replace($sear, $chang, $row['text']);
}
прекращается цикл вывода сообщений.
Цикл сообщений тоже for.
Если до четверга не найду решение, прогоню весь этот str_replace() ручками в громоздкий 63 строчный код, безумно загрузит систему при добавлении коммента...
Это будет не смертельно, т.к. проект уж слишком мал.
значит ошибка при работе с БД...
-можно найти ошибку при работе с бд
-можно забить инфу в массивы
первый вариант
Код:
второй вариант
Код:
$search = array(":angel:", ...);
$replace = array("<img src='image/smile/aa.gif' alt='Ангел' alt='Ангел'/>", ...);
$text = str_replace($search, $replace, $text);
$replace = array("<img src='image/smile/aa.gif' alt='Ангел' alt='Ангел'/>", ...);
$text = str_replace($search, $replace, $text);
Вот прошу исходник на весь ВВ, сильно не судите...
http://sources.codenet.ru/download/3627/BB_code.html
Цитата: Zerstoren
Всем спасибо кто принял участи в помощи создания ВВ кодов.
[/url]
[/url]
Можно и на значок весов нажать :)
с phpBB на BB коды
А что делать с файлов replace.txt?
прочитать его содержимое
Как прочитать ? инклудить? или че
Глазами. Как еще читают текстовые файлы