Помогите усовершенствовать мод Rules 1.0.0

Идеи для расширения функциональности phpBB 2.0.x
Аватара пользователя
Егор Наклоняев
phpBB 2.0.4
Сообщения: 404
Стаж: 20 лет 6 месяцев
Откуда: оттуда

Сообщение Егор Наклоняев »

Сергей Секирин

Гм... Если честно, я не понимаю Ваших мучений. Если Вам нужно, чтобы bbCode оставались на той же странице - выкиньте target=_blank в коде bbcode.php или соответсвующем шаблона bbcode.tpl
2. В тексте сообщения ссылка типа
<a target="_blank" class="postlink" href="/content.php?content=text1">Текст1</a> не делается ссылкой, а остаётся в виде кода на страничке. Дело в знаке "=" что-ли??? Что можно сделать?
Извините. Вообще не понял, что Вы спрашиваете.
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

Всё просто :):

если я пишу ссылку вот такого вида:
<a href="/content.php?content=text1">Текст1</a>, т.е. на HTML, то она так и остаётся этим текстом почему-то, не становясь ссылкой (HTML включен в АСР).

ПРИМ: Мне важно писать ссылку без BBCoda, т.е. на HTML потому, что в ГЛАНСЕ (Add On, выводящий 400 знаков первого поста) и при поиске, BBCode показывает :shock: внутренности юзеру, что в моём случае - нежелательно. А с HTML всё ок, да только вот такие ссылки - с символами ? и = он почему-то не хочет считать ссылкой.

Добавлено спустя 3 минуты 50 секунд:
Гм... Если честно, я не понимаю Ваших мучений. Если Вам нужно, чтобы bbCode оставались на той же странице - выкиньте target=_blank в коде bbcode.php или соответсвующем шаблона bbcode.tpl
Эта проблема уже решена Модом, я ж написал в предыдущем посте :)

Осталась лишь проблема с ссылками в HTML.
Апология здравомыслия - странное занятие Православия:-)
lusever
phpBB 1.4.2
Сообщения: 66
Стаж: 20 лет 1 месяц

Сообщение lusever »

включите в настройках форума HTML.
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

HTML включен. В чём проблема я нашёл. Правда не понимаю почему, но если в моде сделать так:

Код: Выделить всё

----------- НАЙТИ -----------------------------

if ( isset($HTTP_GET_VARS['content']) )
{
	$content = $HTTP_GET_VARS['content'];
}


---------- ЗАМЕНИТЬ НА ------------------------


if ( isset($HTTP_GET_VARS['t']) )
{
	$content = $HTTP_GET_VARS['t'];
}
то вместо <a href="/content.php?content=text1">Текст1</a> нужно писать <a href="/content.php?t=text1">Текст1</a> и всё работает. Это вредное слово content мешает phpBB понять, что это - ссылка. Так что всем спасибо. Проблема решена.


PS: Буду благодарен, если мне кто-нибудь разъяснит, почему не работала первая ссылка <a href="/content.php?content=text1">Текст1</a>, и заработала вторая - <a href="/content.php?t=text1">Текст1</a>.

Добавлено спустя 32 минуты 6 секунд:

Для окончательного совершенства Моду не хватает малого:
1) чтобы файлы tpl хранились не в папке subSilver/content, а в root/content
2) чтобы была проверка - а есть ли указанный в аргументе файл tpl, и, если такого в папке нет, говорил об ошибке (т.е. брал бы шаблон с текстом об ошибке). Сейчас же выдаёт вот что:
Template->make_filename(): Error - file ./content/text1_.tpl does not exist
Пользователю это бы и не к чему видеть.
Апология здравомыслия - странное занятие Православия:-)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

ок... на днях посмотрю =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

Спасибо! Что случилось - так долго не слышно было? Не болеешь?
Апология здравомыслия - странное занятие Православия:-)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

нет не болею... к счастью... =) просто траблы с девушкой были... +( итог расстались... +( а так все ок... ну и по этой причине не было времени положить денег на телефон... а теперь вроде все ок =)

Добавлено спустя 25 минут 41 секунду:

упс... извиняюсь... =) забыл по теме написать =)
http://Ramses.phpBBGuru.net/files/phpbb ... es_102.zip

теперь выводится сообщение об ошибке =)

ПыСы
я так и не понял проблемы ссылками =) вернее где они проявляются =)
и
Для окончательного совершенства Моду не хватает малого:
1) чтобы файлы tpl хранились не в папке subSilver/content, а в root/content
еще с 1.0.1 тплки лежат в папке /content =)))
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

[R: R@m$e$ :U]
Привет!
Please, если есть 5 минут - сделай мне маленький код. Суть такова. С модом Random_content_files адрес имеет следующий вид:
http://site.ru/forum/content.php?t=rules
http://site.ru/forum/content.php?t=book
http://site.ru/forum/content.php?t=topic
и т.д.
Мне бы в этот скрипт добавить маленький SQL-запрос, который по этому якорю rules, book, topic обратится к табличке config и вытащит оттуда текст заголовка, которое и передаст в переменную $page_title, а то файлы этого мода остаются с безличным заголовком. Естественно - тексты в config я сам залью, а вот запросик - напиши, пожалуйста - буду очень благодарен. Сергей.

PS: кстати моду нужно изменить название - убрать Random, которое напоминает о случайности контента, и можно выложить в беты. А вот этот последний штрих сделает его полностью функциональным и для поисковиков.
Апология здравомыслия - странное занятие Православия:-)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

=) надо просто будет помучать немного код и заставить брать заголовок из самого файла =)
но то, что просишь ты...

Код: Выделить всё

[FIND]
//
// Start output of page
//

[BEFORE]
$page_title = $lang['Index'];

$sql = "SELECT config_value
	FROM " . CONFIG_TABLE . "
	WHERE config_name = '" . str_replace("'", "\'", $txt);
if ( $result = $db->sql_query($sql) )
{
	$row = $db->sql_fetchrow($result);
	$db->free_result($result);
	if ( $row['config_value'] != '' )
	{
		$page_title = $row['config_value'];
	}
}



[FIND]
$page_title = $lang['Index'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
[REPLACE]
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
если не ошибаюсь, то так... =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

Было бы классно брать из файла - я много раз об этом думал, да не знаю как сделать.

Спасибо за запрос!
Апология здравомыслия - странное занятие Православия:-)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

чего-нить придумаю, и поделюсь =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

Ок, спасибо, ждём! Стремление к совершенству, похоже - бесконечно во всех сферах жизни. Поэтому сайтостроительство - это не период, а образ жизни :-)
Апология здравомыслия - странное занятие Православия:-)
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

Код: Выделить всё

$page_title = $lang['Index']; 
$sql = "SELECT config_value 
   FROM " . CONFIG_TABLE . " 
   WHERE config_name = '" . str_replace("'", "\'", $txt); 
if ( $result = $db->sql_query($sql) ) 
{ 
   $row = $db->sql_fetchrow($result); 
   $db->free_result($result); 
   if ( $row['config_value'] != '' ) 
   { 
      $page_title = $row['config_value']; 
   } 
} 
Чего-то не получается - срабатывает всегда

Код: Выделить всё

$page_title = $lang['Index']; 
, т.е. пишет - Главная в заголовке и всё. :(
Апология здравомыслия - странное занятие Православия:-)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

тогда попробуй так...

Код: Выделить всё

$page_title = $lang['Index']; 
$sql = "SELECT config_value 
   FROM " . CONFIG_TABLE . " 
   WHERE config_name = '" . str_replace("'", "\'", $txt); 
if ( $result = $db->sql_query($sql) ) 
{ 
   $row = $db->sql_fetchrow($result); 
   $db->free_result($result); 
   $page_title = $row['config_value']; 
   if ( $page_title = $row['config_value'] == '' ) 
   { 
      $page_title = $lang['Index'];
   } 
}
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Сергей Секирин
phpBB 2.0.0
Сообщения: 244
Стаж: 20 лет 2 месяца

Сообщение Сергей Секирин »

То же самое, только при ошибочном якоре даёт еще ошибку SQL # 1064
Я нашёл пока выход из положения:

Сначала
1) проверка наличия "якоря"
если его нет - то в $page_title =''Ошибка'; и выполнение прерывается сообщением об ошибке.

2) проверка наличия шаблона -
если его нет - то в $page_title =''Ошибка'; и выполнение прерывается сообщением об ошибке.

2) если всё есть, то выбор текста

Код: Выделить всё

 switch ( $txt)
       {					case 'editor':					$page_title=$lang['about_editor'];			break;
					case 'friends':
	$page_title=$lang['friends'];
	break;
					case 'doclad':
	$page_title='ВОСПИТАНИЕ ВЕРЫ';
	break;
					default:
                 $page_title = $lang['View_topic'];
       }
4) Затем вывод страницы..
С запросом SQL вряд-ли будет легче... Вот если бы скрипт сначала к шаблону обращался, получал бы оттуда значение $page_title , а затем уже всё в шаблон передавал, то это было-бы супер! Подумаешь? :oops:
Апология здравомыслия - странное занятие Православия:-)

Вернуться в «Запросы модов для phpBB 2.0.x»