Recent Topics

Все моды, созданные нашим сообществом для phpBB 2.0.x, анонсированы тут.
Front
phpBB 1.4.0
Сообщения: 31
Зарегистрирован: 27.02.2008 21:12

Сообщение Front » 13.05.2008 16:29

Ребят, подскажите..
У меня тоже проблема с выводом windows-1251 на страницу с utf-8.
Это сообщение видел
http://www.phpbb-guru.net/community/vie ... 5720#65720
но у меня нет строки
'USERNAME' => $row['username'],

Методом аналогии и тыка пробовал менять строку
$topic_title = $row['topic_title'];
на
$topic_title = iconv("Windows-1251", "UTF-8", $row['topic_title']);

Получается такой глюк:
"Знаки внимания" на до�…
Ботик Петра по дороге в Пер�…
т.е. если последнее слово обрезается - лезет кракозябыр.

Другие варианты из этой темы, в т.ч. редактирование .htaccess дает то что вобще ничего не выводится, т.е. пустота.

Как сделать правильно?

Добавлено спустя 2 часа 46 секунд:

Решил временно проблему кракозябра в конце установкой 100 знаков в строке:
$cfg_max_topic_length = 100;
Выглядит вроде все правильно.
И всеже меня беспокоит, почему у всех есть строка
'USERNAME' => $row['username'],
а у меня нет. Где я ступил? :?

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


Теперь в Опере страница глючит! А было все наоборот, в Опере нормально, а в IE квардратики.

Теперь в Опере (если стоит автоопределение кодировки) выглядит так:
Последнее с форума
Давайте поиграем! Ассоциации.
Отказники
Машина «бьется» током
Если принудительно поставить в UTF-8, то нормально.
Куда копать?

В хидере стоит
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Добавлено спустя 1 час 16 минут 42 секунды:

Решил проблему, всем ответившим спасибо :D
Все вышенаписанное, плюс в .htaccess добавил
<files recent.php>
AddDefaultCharset utf-8
</files>
Все, файл recent.php выдается в браузер в UTF-8
Последний раз редактировалось Front 15.05.2008 17:24, всего редактировалось 1 раз.

Аватара пользователя
inplan
phpBB 1.4.0
Сообщения: 36
Зарегистрирован: 13.11.2007 17:40
Благодарил (а): 4 раза

Сообщение inplan » 15.05.2008 17:15

А можно сделать так, что бы темы выводились не списком, а в бегущей строке? Придает некоторую динамику сайтам

Аватара пользователя
Поручик
Former team member
Сообщения: 3942
Зарегистрирован: 12.05.2005 17:25
Откуда: Оренбург (Южный Урал)
Благодарил (а): 24 раза
Поблагодарили: 54 раза
Контактная информация:

Сообщение Поручик » 15.05.2008 17:20

Можно. Пример работы и кода взять с ezportal или банальный html.
Профессионал - тот же дилетант, только знающий, где ошибётся.
Генератор db_update.php для phpBB2 с некоторыми удобствами. Многие моды я беру или ищу здесь, здесь, тут
Все консультации только на форуме, приваты и стук в аську по таким вопросам игнорируются!
FAQ-phpBB3 | Ошибки новичков, или как не поссориться с модератором | Правила конференции

наш форум http://forum.aeroion.ru/cat1.html

Аватара пользователя
inplan
phpBB 1.4.0
Сообщения: 36
Зарегистрирован: 13.11.2007 17:40
Благодарил (а): 4 раза

Сообщение inplan » 15.05.2008 17:26

Поручик писал(а):Можно. Пример работы и кода взять с ezportal или банальный html.
- благодарю, подумывал над этим - показалось не целесообразным превращать форум в портал только ради бегущей строки

Кроме того, в моде Recent Topics можно было бы реализовать выбор вывода - список или бегущая строка - некоторым моим сайтам-партнерам удобен список, другим - бегущая строка. Но это уже закидоны - буду признателен за подсказку хотя бы в отношении бегущей строки

Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Зарегистрирован: 12.11.2004 0:20
Поблагодарили: 13 раз
Контактная информация:

Re: Recent Topics

Сообщение VVVas » 19.05.2008 12:33

Уберите из шаблона переносы строки и оберните в тег бегущей строки.
я люблю daft punk | новый sugoi.ru

nordfox
phpBB 1.0.0
Сообщения: 2
Зарегистрирован: 21.05.2008 11:02
Откуда: Питер
Контактная информация:

Re:

Сообщение nordfox » 21.05.2008 11:13

inplan писал(а):А можно сделать так, что бы темы выводились не списком, а в бегущей строке? Придает некоторую динамику сайтам
Посмотри как на моем форуме. адрес в профиле. там все просто, как в танке.

Аватара пользователя
inplan
phpBB 1.4.0
Сообщения: 36
Зарегистрирован: 13.11.2007 17:40
Благодарил (а): 4 раза

Re: Recent Topics

Сообщение inplan » 21.05.2008 13:55

Действительно просто ... хорошо, а еще вопрос:

в списке затронутых тем, выдаваемым recent topics, отсутствуют темы, созданные в разделе, доступ к которому имеет не все пользователи, а только пользователи определенной группы. Понятно излогаю? То есть, я создаю раздел и устанавливаю права просмотра на него только для определенной группы пользователей - вот темы этого раздела и не отображаются в списке recent topics - а надо что бы отображались. Подскажите плиз

nordfox
phpBB 1.0.0
Сообщения: 2
Зарегистрирован: 21.05.2008 11:02
Откуда: Питер
Контактная информация:

Re: Recent Topics

Сообщение nordfox » 21.05.2008 16:48

inplan писал(а):Действительно просто ... хорошо, а еще вопрос:

в списке затронутых тем, выдаваемым recent topics, отсутствуют темы, созданные в разделе, доступ к которому имеет не все пользователи, а только пользователи определенной группы. Понятно излогаю? То есть, я создаю раздел и устанавливаю права просмотра на него только для определенной группы пользователей - вот темы этого раздела и не отображаются в списке recent topics - а надо что бы отображались. Подскажите плиз
Тема уже поднималась на форуме. Я решал заменой AUTH_ALL <=> AUTH_REG в тексте запроса к базе. Да и вообще, если запрос покрутить, то можно что угодно вывести. Только с умом надо крутить.

Аватара пользователя
inplan
phpBB 1.4.0
Сообщения: 36
Зарегистрирован: 13.11.2007 17:40
Благодарил (а): 4 раза

Re: Recent Topics

Сообщение inplan » 21.05.2008 18:49

Тема уже поднималась на форуме. Я решал заменой AUTH_ALL <=> AUTH_REG в тексте запроса к базе. Да и вообще, если запрос покрутить, то можно что угодно вывести. Только с умом надо крутить.
- не врубился - заменить

AND f.auth_read = " . AUTH_ALL . "

на

AND f.auth_read = " . AUTH_REG . "

Извини - с php не в ладах

nordfox
phpBB 1.0.0
Сообщения: 2
Зарегистрирован: 21.05.2008 11:02
Откуда: Питер
Контактная информация:

Re: Recent Topics

Сообщение nordfox » 22.05.2008 14:09

да

Аватара пользователя
inplan
phpBB 1.4.0
Сообщения: 36
Зарегистрирован: 13.11.2007 17:40
Благодарил (а): 4 раза

Re: Recent Topics

Сообщение inplan » 24.05.2008 18:25

Это не помогло - помогло простое удаление строки AND f.auth_read = " . AUTH_ALL . "

nordfox
phpBB 1.0.0
Сообщения: 2
Зарегистрирован: 21.05.2008 11:02
Откуда: Питер
Контактная информация:

Re: Recent Topics

Сообщение nordfox » 26.05.2008 10:18

inplan
с точки зрения MySQL - правильно, с точки зрения форума - не совсем корректно.

Аватара пользователя
Сильва Гауэн
phpBB 1.2.0
Сообщения: 18
Зарегистрирован: 09.10.2007 5:39
Откуда: Дальний Восток
Контактная информация:

Re: Recent Topics

Сообщение Сильва Гауэн » 09.10.2008 11:46

Читала тему весь день.

Как сделать, чтобы на странице помимо названий-ссылок на темы-объявления отображалось еще и время создания тем - догадалась.

А вот как заставить выводить под названиями тем первые N символов сообщения - не могу сделать.

Конкретно - не могу правильно сформулировать sql-запрос...

Может кто-нибудь дословно привести необходимые изменения, которые надо произвести?
Свобода выбора - это такая штука, которую у нас никак не отнять...

Аватара пользователя
Сильва Гауэн
phpBB 1.2.0
Сообщения: 18
Зарегистрирован: 09.10.2007 5:39
Откуда: Дальний Восток
Контактная информация:

Re: Recent Topics

Сообщение Сильва Гауэн » 11.10.2008 17:21

Так... проблему решила самостоятельно. Описываю, как я это проделала.

Для вставки даты и времени создания темы:

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

# 
#-----[ OPEN ]------------------------------------------------ 
# 
recent.php

# 
#-----[ FIND ]------------------------------------------------ 
#

$sql = "SELECT t.topic_id, t.topic_title, t.topic_last_post_id

# 
#-----[IN-LINE, AFTER, ADD ]------------------------------------------ 
#
, t.topic_time

# 
#-----[ FIND ]------------------------------------------------ 
#
$topic_title = ( strlen($topic_title) > $cfg_max_topic_length ) ? substr($topic_title, 0, $cfg_max_topic_length) . '&hellip;' : $topic_title;

# 
#-----[ AFTER, ADD ]------------------------------------------ 
#
 $post_date = create_date('d F Y, l, H:i', $row['topic_time'], $board_config['board_timezone']);

# 
#-----[ FIND ]------------------------------------------------ 
#
'U_TOPIC' => $viewtopic_url . '?' . POST_TOPIC_URL . '=' . $row['topic_id'],

# 
#-----[ BEFORE, ADD ]----------------------------------------- 
#
 'POST_DATE' => $post_date,

# 
#-----[ OPEN ]------------------------------------------------ 
# 
recent_body.tpl

# 
#-----[ FIND ]------------------------------------------------ 
#
document.writeln('

# 
#-----[IN-LINE, AFTER, ADD ]------------------------------------------ 
#
{topicrow.POST_DATE}<br>

# 
#-----[ SAVE/CLOSE ALL FILES ]-------------------------------- 
# 
Для вставки вывода первого сообщения темы:
(вывод сообщения настраивался после настройки вывода даты\времени, поэтому пишу проделанные изменения с учетом этого факта)

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

# 
#-----[ OPEN ]------------------------------------------------ 
# 
recent.php

# 
#-----[ FIND ]------------------------------------------------ 
#

$sql = "SELECT t.topic_id, t.topic_title, t.topic_last_post_id, t.topic_time

# 
#-----[IN-LINE, AFTER, ADD ]------------------------------------------ 
#
, q.post_text

# 
#-----[ FIND ]------------------------------------------------ 
#
AND p.post_id = t.topic_last_post_id


# 
#-----[AFTER, ADD ]------------------------------------------ 
#
AND q.post_id = p.post_id

# 
#-----[ FIND ]------------------------------------------------ 
#
$template->assign_block_vars('topicrow', array(

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
#
 $message = $row['post_text'];

# 
#-----[ FIND ]------------------------------------------------ 
#
'U_TOPIC' => $viewtopic_url . '?' . POST_TOPIC_URL . '=' . $row['topic_id'],

# 
#-----[ AFTER, ADD ]----------------------------------------- 
#
 'POST_TEXT' => str_replace("'", "\'", $message),

# 
#-----[ OPEN ]------------------------------------------------ 
# 
recent_body.tpl

# 
#-----[ FIND ]------------------------------------------------ 
#
{topicrow.TOPIC_TITLE}</a><br />

# 
#-----[IN-LINE, AFTER, ADD ]------------------------------------------ 
#
{topicrow.POST_TEXT}<br />

# 
#-----[ SAVE/CLOSE ALL FILES ]-------------------------------- 
# 
В общем, это мои потуги действовать в той сфере, в которой ничего не знаю - РНР я не владею совершенно... Было бы интересно услышать комментарии профессионалов. Постаралась оформить пост красиво, если что-то не так, прошу сильно не бить - исправлю...

Добавлено спустя 24 минуты 58 секунд:
Так... выяснилось после добавления еще одного сообщения в тему с объявлением, что показывает не ПЕРВОЕ, а ПОСЛЕДНЕЕ сообщение в теме...

Буду думать.
Свобода выбора - это такая штука, которую у нас никак не отнять...

Аватара пользователя
Сильва Гауэн
phpBB 1.2.0
Сообщения: 18
Зарегистрирован: 09.10.2007 5:39
Откуда: Дальний Восток
Контактная информация:

Re: Recent Topics

Сообщение Сильва Гауэн » 11.10.2008 18:47

Нашла.

Нужно в строчке

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

$sql = "SELECT t.topic_id, t.topic_title, t.topic_last_post_id, t.topic_time
дописать

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

$sql = "SELECT t.topic_id, t.topic_title, t.topic_last_post_id, t.topic_first_post_id, t.topic_time
а строчку

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

AND p.post_id = t.topic_last_post_id
заменить на

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

AND p.post_id = t.topic_first_post_id
Тогда будет выводить ПЕРВОЕ сообщение, а не ПОСЛЕДНЕЕ...
Свобода выбора - это такая штука, которую у нас никак не отнять...

Закрыто

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