Показать сообщение отдельно
Старый 22.02.2011, 16:04 Вверх   #1
Уважаемая личность
 
Аватар для foozzi
foozzi вне форума
Доп. информация
По умолчанию Отображение последних тем форума на сайте

В этом гайде я опишу подробно как сделать вывод последних сообщений форума на сайт (не важно какой)

И так начнем, что для этого нам надо:

1. Создаем файл stats.php и вписываем туда код ниже

2. Редактируем код под себя

Код:
<?php 
// ################################ 
// в том месте на сайте, где хотите видеть последние "х" тем с форума, подключить код ниже 
/* 
    include 'http://your.site.com/stats.php'; // Путь к файлу stats.php (нужно кидать его в корень сайта, а не форума)
*/ 
// ################################ 
chdir('/path/to/forum');       // Здесь прописать путь от сервера к папке вашего форума (Не URL!) 
require_once('./global.php'); // Не трогаем

// ###### Начало настроек ###### 
   $forumdir = "forum";           // директория форума (без слэша "/" в конце) 
                                    // если форум и сайт в разных доменах, прописать полный URL до дир. форума 
   $privateforumid = "";           // закрытые форумы (ID форумов прописывать через запятую) 

   $showlimit = "5";                // лимит выводимых тем 

   $and_fid = "";                   // здесь можно прописать ID конкретного раздела, 
                                    // из которого будут выводиться новости, если оставить настройку пустой 
                                    // новости будут выводиться из всего форума 
// ###### Конец настроек  ###### 

if(empty($and_fid) OR $and_fid == '0') 
{ 
        $and_forumid = ''; 
} 
else 
{ 
        $and_forumid = " AND forumid = $and_fid "; 
} 

if(empty($privateforumid) OR $privateforumid == '0') 
{ 
        $priv_forumid = ''; 
} 
else 
{ 
        $priv_forumid = " AND forumid NOT IN ($privateforumid) "; 
} 
if(empty($showlimit) OR $showlimit == '0') 
{ 
        $showlimit = '5'; 
} 
        $result = $db->query_read(" 
                          SELECT threadid, 
                                 lastposter, 
                                 title, 
                                 postusername, 
                                 T.lastpost AS lastpostdate, 
                                 views, 
                                 postuserid, 
                                 replycount, 
                                 U.userid as userid 
                          FROM ".TABLE_PREFIX."thread T 
                          LEFT JOIN ".TABLE_PREFIX."user U ON (T.lastposter = U.username) 
                          WHERE 1=1 $priv_forumid $and_forumid 
                          ORDER BY T.lastpost DESC 
                          LIMIT $showlimit 
                          "); 
  while ($lastx_thread = $db->fetch_array($result)) 
        { 
  echo "<font size='1'>Тема:  <a href='$forumdir/showthread.php?goto=lastpost&t=".$lastx_thread['threadid']."'>".$lastx_thread['title']."</a></font>"; 
     if ($lastx_thread['userid']) 
  echo "<br><font size='1'>Автор:  <a href='$forumdir/member.php?action=getinfo&userid=".$lastx_thread['userid']."'>".$lastx_thread['lastposter']."</a></font> 
        <br><font size='1'>Дата:  ".date("d.m.y, H:i",$lastx_thread['lastpostdate'])."</font> 
        <br><font size='1'>Просмотров: {$lastx_thread['views']} posts: {$lastx_thread['replycount']}</font> 
        <hr width='175' align='left'>"; 
    else 
  echo "<font size='1'>Тема:  <a href='$forumdir/showthread.php?goto=lastpost&t=".$lastx_thread['threadid']."'>".$lastx_thread['title']."</a></font> 
        <br><font size='1'>Автор:  {$lastx_thread['lastposter']}</font> 
        <br><font size='1'>Дата:  ".date("d.m.y, H:i",$lastx_thread['lastpostdate'])."</font> 
        <br><font size='1'>Просмотров: {$lastx_thread['views']} posts: {$lastx_thread['replycount']}</font> 
        <hr width='175' align='left'>"; 
   } 
?>

3. Сохраняем и подключаем код на нужную вам страницу

4. Радуемси
  Ответить с цитированием
 
Время генерации страницы 0.03940 секунды с 10 запросами