Menu
Авторизация:
Зарегистрироваться.
Форумы
Пользователь: def
Дата: 30-марта-2006 9:56 pm
Просмотров: 117504
Оценка: 0    Оценить [
|
]

Возник такой вопрос.

 Структура нашего сайта такова, что в разных разделах имеются свои форумы. Задача: выводить последние сообщения на форумах в двух видах

  1. все последние сообщения на всех форумах в одном месте в хронологическом порядке
  2. все последние сообщения разделенные по форумам (самый лучший вариант)

Вопрос такой - Какова структура таблиц MySQL для форумов и как оттуда вытаскивать данные по каждому отдельно взятому форуму?

Еще хотелось бы дать посетителям возможность сортировать сообщения по времени поступления (временной интервал от часа или нескольких дней до нескольких лет или с самого начала создания форума), ну что-то вроде вроде "Показать сообщения за последние ..."

Благодарю. 

Re: Форумы
Пользователь: Admin
Дата: 30-марта-2006 9:56 pm
Просмотров: 8551
Оценка: 0    Оценить [
|
]

Только что выложил на сайте статью на эту тему (анонс на заглавной). Будут дополнительные вопросы - пишите.


Пожалуйста, все вопросы и пожелания оставляйте на форуме, а не направляйте прямиком мне на E-mail

Re: Форумы
Пользователь: def
Дата: 30-марта-2006 9:56 pm
Просмотров: 7859
Оценка: 0    Оценить [
|
]
Очень полезная пабота была сделана Вами!!!
Огромное спасибо!!!

Но наша проблема немного шире - как разделить последние ответы по разным форумам, новостям и т.п.?
Допустим:
форум по автомобилям:
- последние сообщения
форум по яхтам:
- последние сообщения
форум по недвижимости:
- последние сообщения
Новости по авто
-последние новости

ну и т.п.
Re: Форумы
Пользователь: Admin
Дата: 30-марта-2006 9:56 pm
Просмотров: 26037
Оценка: -2    Оценить [
|
]

Фильтруйте по кускам URL

Что-то вроде:

AND (assetData.url LIKE 'news/%' OR assetData.url LIKE 'photos/%')

Если хотите добавить обсуждение новостей, но чтобы туда не попадали сами новости, тогда добавляется ещё что-то вроде:

AND !(assetData.url LIKE 'news/%' AND asset.className = 'WebGUI::Asset::Post::Thread')
AND !(assetData.url LIKE 'photos/%' AND asset.className = 'WebGUI::Asset::Post::Thread')

Вобщем дальше должны работать Ваше знание структуры сайта и чувство логики. Это заранее не напишешь. Это корректируется по месту.

Кроме того, можно давать всё скопом, но при этом выводить название раздела рядом с каждым постом, как это сделано в анонсе новостей...

asset.className = 'WebGUI::Asset::Post::Thread' - это в форуме начальный пост, который открывает тему или, если Colaboration System настроена, как лента новостей, но это сама новость.

asset.className = 'WebGUI::Asset::Post' - это ответные посты внутри темы в форуме или обсуждение новостей внутри ленты новостей.


Пожалуйста, все вопросы и пожелания оставляйте на форуме, а не направляйте прямиком мне на E-mail

--- (Отредактировано в 29-Марта-2006 11:21 pm от Admin) --- --- (Отредактировано в 29-Марта-2006 11:36 pm от Admin) --- --- (Отредактировано в 29-Марта-2006 11:36 pm от Admin) ---

© 2004-2024 WebGUI на русском. | Powered by WebGUI
& use Foundation framework | Расположен на WebGUI hosting