Jump to content

Трансляция новотей форума на сайт


Bard
 Share

Recommended Posts

Доброго времени суток.

ПОиском пользовался, но ответа не нашел. Если проглядел - буду признателен за ссылку.

 

Задача: трансля новостей с форума (первые посты каждой темы из определенного форума) на сайт.

 

Сайт самописный, так что решения для WP и прочих движков не подходят.

 

Прошу помощи у местных специалистов, хорошо знающих БД форума.

 

В моем понимании это цикл, запрашивающий данные напрямую из базы, но как правильно организовать запрос?

Причем запрос данных с учетом времени создания темы (новые сверху).

Помогите пожалуйста с самим запросом.

 

$news_num=10; //количество выводимых новостей
$news_forum_id=4; //id форума новостей
for ($i=0; $i<$news_num; $i++)
{
 //запрос и вывод данных

}

Спасибо.

 

P.S. Почему бот опять ругается? Board URL актуален и доступен.

Edited by Bard
Link to comment
Share on other sites

Обратите внимание

"Board url", указанный вами в профиле, некорректен, либо недоступен на данный момент. Пожауйста, заполните его, потому что он скорее всего потребуется при диагностике вашей проблемы.

Link to comment
Share on other sites

Есть ssi.php, с его помощью можно вывести последние темы (насчет первого сообщения не з наю)

 

А сам запрос будет примерно следующим

 

SELECT t.*, p.* FROM ibf_topics t INNER JOIN ibf_posts p ON t.topic_firstpost=p.pid WHERE t.forum_id=ид_форума AND approved=1 ORDER BY start_date DESC LIMIT 10

ид_форума - ид определенного форума

  • Upvote 1
Link to comment
Share on other sites

siv1987, спасибо, попробую завтра разобраться.

Идею кажется понял, дальше циклом делать вывод данных из матрицы.

Link to comment
Share on other sites

Идею кажется понял, дальше циклом делать вывод данных из матрицы.

Не совсем циклом, и не совсем из матрицы.

Вы делаете sql запрос, запрос возвращает результат с найденными строками. Уже этот результат фетчите циклом с помощью одной из функций mysql_fetch_*, но обычно это mysql_fetch_assoc.

 

$res = mysql_query('SQL QUERY');
while($row = mysql_fetch_assoc($res))
{
   //process data
}

  • Upvote 1
Link to comment
Share on other sites

Спасибо, в целом разобрался.

По ID поста вытащил из таблицы постов текст и автора, но остался один вопрос:

- в таблице есть поле "post_date", но оно имеет формат int, а не даты. К примеру в моем случае post_date=1384756202

Подскажите пожалуйста, как из этого цифрового месева получить нормальную дату вида DD.MM.YY HH:MM для вывода?

Заранее спасибо.

 

P.S. Отдельное спасибо за mysql_fetch_*, разобрался, раньше решал такие задачи циклом по количеству строк, но так гораздо удобнее.

Edited by Bard
Link to comment
Share on other sites

Подскажите пожалуйста, как из этого цифрового месева получить нормальную дату вида DD.MM.YY HH:MM для вывода?

http://php.net/manual/ru/function.date.php - работает с дефолтной локалью сервера.

http://php.net/manual/ru/function.strftime.php - с использованием setlocale().

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...