Быстрый лёгкий надёжный форумный движок
Вы не вошли.
Страницы 1
Тема закрыта
Это поле: "Статус (Оставьте поле пустым, для использования настроек форума, по умолчанию.)"
в профиле надо:
1. сделать поодержку HTML. Чтобы <br> например делало перевод строки.
2. сделать поодержку много символов(по количеству.) - надо много....
ПОМОГИТЕ, плиз.:(
Что, никто не знаеТ?!
Ладно сам попробую разобратся!:(
Добавлено спустя 30 минут 25 секунд:
Длину сделал- а как чтобы чисто в html сохранялось? Помогите, пожалуйста.
Редактировался dector (2007-12-08 23:46:02)
Открываешь include/functions.php
Ищешь:
pun_htmlspecialchars($user['g_user_title']);
тут удаляешь:
pun_htmlspecialchars
Редактировался Jenyok (2008-01-13 17:38:35)
Удалил. Но показывает хтмл коды(( Тоесть как текст.
И показывает только 29-30 символов! ПОмогите пожалуйста!
dector
Быстро верни все как было
Вот это
pun_htmlspecialchars($cur_rank['rank']);
в include/functions.php меняешь на это
str_replace('[br]','<br />',pun_htmlspecialchars($cur_rank['rank']));
и в рангах используешь для перевода строки [br].
понил. спасибо.
это рас.
так - на основе этого сделаю , и т.д.
его поочередно делать?
типо
$user_title = str_replace('[br]','<br />',pun_htmlspecialchars($cur_rank['rank']));
$user_title = str_replace('[i]','<i>',pun_htmlspecialchars($cur_rank['rank']));
$user_title = str_replace('','</i>',pun_htmlspecialchars($cur_rank['rank']));
это два.
и где убрать чтобы не отображало только 30 символов? а то после отправки режет(
Добавлено спустя 37 минут 19 секунд:
--------
пробовал. ниче не помогает(((
даже так сделал:
if (intval($user['num_posts']) >= $cur_rank['min_posts']) {
$user_title = str_replace('[br]','<br>',pun_htmlspecialchars($user_title));
$user_title = str_replace('','<i>',pun_htmlspecialchars($user_title));
$user_title = str_replace('','</i>',pun_htmlspecialchars($user_title));
$user_title = str_replace('','<b>',pun_htmlspecialchars($user_title));
$user_title = str_replace('','</b>',pun_htmlspecialchars($user_title));
$user_title = str_replace('[hr]','<hr>',pun_htmlspecialchars($user_title));
}
хелп!!!
Редактировался dector (2008-01-16 22:22:39)
да видимо режет в БД
кажется сам там у себя делал его длинее именно в БД, хотя могу и ошибаца
dector
да видимо режет в БД
кажется сам там у себя делал его длинее именно в БД, хотя могу и ошибаца
Просто глянь в таблицу статусов, если поле название статуса по ширине 30, значит надо расширить поле статуса в таблице.
Вот это:
даже так сделал:
if (intval($user['num_posts']) >= $cur_rank['min_posts']) {
$user_title = str_replace('[br]','<br>',pun_htmlspecialchars($user_title));
$user_title = str_replace('[i]','<i>',pun_htmlspecialchars($user_title));
$user_title = str_replace('[/i]','</i>',pun_htmlspecialchars($user_title));
$user_title = str_replace('[b]','<b>',pun_htmlspecialchars($user_title));
$user_title = str_replace('[/b]','</b>',pun_htmlspecialchars($user_title));
$user_title = str_replace('[hr]','<hr>',pun_htmlspecialchars($user_title));
}
все pun_htmlspecialchars кроме первого лишние.
Надо так:
$user_title = str_replace('[br]','<br>',pun_htmlspecialchars($user_title));
$user_title = str_replace('[i]','<i>',$user_title);
$user_title = str_replace('[/i]','</i>',$user_title);
$user_title = str_replace('[b]','<b>',$user_title);
$user_title = str_replace('[/b]','</b>',$user_title);
$user_title = str_replace('[hr]','<hr>',$user_title);
Редактировался Visman (2008-01-17 04:05:08)
с длинной сделал. а с правильным форматированием не получилось((
помогите пожалуйста. может єто еще режет - там где ОТОБРАЖАЕТСЯ пост?
Добавлено спустя 1 минуту 45 секунд:
во - форум конвертит в <i>
как убрать чтобы оно не конвертило?
Добавлено спустя 5 минут 36 секунд:
может profile.php редактировать? но где??
убери pun_htmlspecialchars
dector
С тем что я написал должно работать
Только используем
[br] [i] [/i] [b] [/b] [hr]
.
Хотя попробуй просто в квадратных скобках поставить другие коды, которых парсер форума не знает, например
[br] [ii] [/ii] [bb] [/bb] [hrhr]
работать то должно -но оно превращает символы < и > в < и i>
Добавлено спустя 6 минут 23 секунды:
ввел Привет
отображается: Привет
Редактировался dector (2008-01-17 16:53:40)
dector
Прям не знаю что там накулебячено, но у меня эта конструкция нормально работает
if (intval($user['num_posts']) >= $cur_rank['min_posts']) {
$user_title = str_replace('[br]','<br />',pun_htmlspecialchars($cur_rank['rank'])); // перенос длинной строки статуса пользователя
$user_title = str_replace('[i]','<i>',$user_title);
$user_title = str_replace('[/i]','</i>',$user_title);
$user_title = str_replace('[b]','<b>',$user_title);
$user_title = str_replace('[/b]','</b>',$user_title);
$user_title = str_replace('[hr]','<hr>',$user_title);
}
Правда с жирным шрифтом команды следует убрать, так как статус пользователя и так жирным выводится.
Редактировался Visman (2008-01-17 17:24:58)
сделал так-же..
я тут подумал - может мы про различные вещи говорим?
мне надо чтобы я вводил каждому пользователю разные ЛС.
тоесть мне надо чтобы отображалось то что я ввел. чистим инклудом.
а?
Я говорю о рангах, которые задаются в админке
Они обрабатываются в функции function get_title($user) в файле functions.php.
Изменения вношу туда.
З.Ы. Так что мы говорим о совершенно разных вещах.
А мне нужно сменить поле "Статус", которое задается в профиле.
Первый пост темы звучал так:
Это поле: "Статус (Оставьте поле пустым, для использования настроек форума, по умолчанию.)"
в профиле надо:1. сделать поодержку HTML. Чтобы <br> например делало перевод строки.
2. сделать поодержку много символов(по количеству.) - надо много....ПОМОГИТЕ, плиз.:(
Так что это Вы неправильно прочитали;)
гы) я говорю по теме;)
а теперь, зная правильное условие - можете помочь?
Там же в functions.php ищем
// If the user has a custom title
if ($user['title'] != '')
$user_title = pun_htmlspecialchars($user['title']);
и заменяем на то что я предлагал обработку $user_title.
заменил на:
if ($user['title'] != '') {
$user_title = str_replace('[br]','<br />',pun_htmlspecialchars($user['title']));
$user_title = str_replace('[i]','<i>',$user['title']);
$user_title = str_replace('[/i]','</i>',$user['title']);
$user_title = str_replace('[b]','<b>',$user['title']);
$user_title = str_replace('[/b]','</b>',$user['title']);
$user_title = str_replace('[hr]','<hr>',$user['title']);
}
а ничего не получилось(((
Добавлено спустя 5 минут 29 секунд:
ееее все готово!
Добавлено спустя 5 минут 57 секунд:
вот код:
if ($user['title'] != '') {
$user_title = str_replace('[br]','<br />',pun_htmlspecialchars($user['title']));
$user_title = str_replace('[i]','<i>',$user_title);
$user_title = str_replace('[/i]','</i>',$user_title);
$user_title = str_replace('[b]','<b>',$user_title);
$user_title = str_replace('[/b]','</b>',$user_title);
$user_title = str_replace('[hr]','<hr>',$user_title);
}
Спасибо.
Добавлено спустя 16 минут 26 секунд:
есе есть вопросы:)))
*где прописано чтобы статус писался жирным - просто подскажите - я подправлю)
Надо пройтись по файлам поиском и найти места вызова функции get_title.
Далее смотрим места, где результаты вызова этой функции выводятся в хтмл.
Либо там результат обрамляется < b > и < /b > (их значит убрать), либо стиль применяется (тогда его менять в файле стилей).
З.Ы. А возможно обрамление вывода сделано так < strong > и < /strong > (как на данном форуме)
перебирать не пришлось. нейронные сети рулят.
открыл viewtopic.php нашел $user_tittle и в выводе снял стронг
Страницы 1
Тема закрыта