[help] Вывод сообщений на основной сайт с форума vBulletin

Статус
В этой теме нельзя размещать новые ответы.
Ответы на все ваши вопросы!
*** скрытое содержание ***
Там наверно написано не для чайников. Приведенный код там не полон, я так и не понял как там базу данных подключить.
Но зато в другом скрипте разобрался.
Создаем файл forum.php
Код:
<?php 
//Автор Svlab - http://www.ForumSE.ru/ 
if(!defined("DNREAD")) exit(); 
//настройки соединения с Базой данных. 
$db_hostvbb = "localhost"; // адрес Вашей Базы данных 
$db_namevbb = "----------"; //Имя Базы данных. 
$db_uservbb = "----------"; // Имя пользователя Базы данных. 
$db_pwvbb = "-----------"; // Пароль пользователя Базы данных. 
$prefix_vbb = "---------";//Вставьте свой префикс таблиц Базы данных. 
//Настройки блока вывода сообщений 
$forum_url = "http://Ваш домен/forum"; // Измените путь к вашему форуму.Без слеша в конце. 
$forum_img = "http://Ваш домен/up"; // Измените путь к вашей папке хранения файлов. 
$limit = "10"; // Лимит выводимых сообщений. 
$txtlimit = "50"; // Лимит знаков выводимого сообщения. 
$txtlimit1 = "25"; // Лимит знаков выводимого ника  автора поста. 
$txtlimit2 = "50"; // Лимит знаков темы форума отображаемого тэгом alt. 
####################################### 

// Соединение с Базой данных. 
mysql_connect($db_hostvbb, $db_uservbb, $db_pwvbb) 
OR die ("Нет соединения с Базой данных"); 
mysql_select_db($db_namevbb) OR die("Нет соединения с Базой данных"); 

// Здесь рисуем то ,как Вы хотите выводить сообщения.(Заголовок блока) 
$block_contvbb.="<table width=\"650\" cellspacing=\"0\" cellpadding=\"2\"class=\"container\">\n"; 
$block_contvbb.="<tr><td><table class=\"post_tools\" width=\"650\"height=\"25\"><tr><td width=\"400\" align=\"center\" >Сообщение</td><td width=\"100\" align=\"center\">&nbsp;&nbsp;&nbsp;&nbsp;Поместил&nbsp;&nbsp;&nbsp;&nbsp;</td><td width=\"50\" align=\"center\">&nbsp;Дата&nbsp;</td><td width=\"50\" align=\"center\">&nbsp;Прос.&nbsp;</td><td width=\"50\" align=\"center\"> &nbsp;Отв.&nbsp;</td></tr></table></td></tr>\n"; 

//формируем контент для вывода сообщений. 
if ($limit) { 
$limited = "LIMIT $limit"; 
} 
$thread_sql = mysql_query("SELECT `threadid`, `title`, `lastpost`, `lastposter`, `views`, `replycount` FROM `".$prefix_vbb."thread` WHERE `visible`=1 AND `forumid` NOT IN('301')  ORDER BY `lastpost` DESC ".$limited); 
// в     NOT IN('301')     301 заменяем на  ID форума который Вы не хотите анонсировать на главной 
while($thread_get=mysql_fetch_array($thread_sql)) 
{ 

$lastpost = $thread_get['lastpost']; 
$poster = $thread_get['lastposter']; 
$tid = $thread_get['threadid']; 
$psql1 = mysql_query("SELECT postid,pagetext,userid  FROM ".$prefix_vbb."post WHERE threadid=$tid ORDER BY postid DESC $limited"); 
$getp1=mysql_fetch_array($psql1); 
$pid = $getp['postid']; 
$date2 = date ("d-m-y " ,$lastpost); 
$title1 = $thread_get['title']; 
$title2 = substr($title1,0,$txtlimit2); 
$poster1 = $getp1['pagetext']; 
$poster2 = preg_replace("#\[quote+(.*)\]\s*(.*?)\s*\[/quote\]#is", "$3", $poster1); 
$poster2 = preg_replace("#\[url\]\s*(.*?)\s*\[/url\]#is", "$3", $poster2); 
$poster2 = preg_replace("#\[img\]\s*(.*?)\s*\[/img\]#is", "$3", $poster2); 
$poster2 = substr($poster2,0,$txtlimit); 
$users = $getp1['userid']; 
$views1 = $thread_get['views']; 
$replycount1 = $thread_get['replycount']; 
//выводим полученный контент.В <img src=\"$forum_img/tem.gif\"пропишите путь к рисунку который будет выводится перед сообщением с alt о теме форума. 
$block_contvbb.="<tr><td><table class=\"pforum\" width=\"650\" height=\"25\"><tr><td width=\"400\" align=\"left\" ><img src=\"$forum_img/tem.gif\" alt=\" Тема форума:<br><b> $title2 </b>\"> <a href=\"$forum_url/showthread.php?t=$tid\" alt=\" Название форума $title2\">$poster2</a></td><td width=\"100\" align=\"center\"><a href=\"$forum_url/member.php?u=$users\">$poster</a></td><td width=\"50\" align=\"center\"><i>$date2</i></td><td width=\"50\" align=\"center\">&nbsp;$views1&nbsp;</td><td width=\"50\" align=\"center\"> &nbsp;$replycount1&nbsp;</td></tr></table></td></tr>\n"; 
} 

$block_contvbb.="</table>\n"; 
@mysql_close($link); 
#return $block_contvbb;  //сама  переменная куда все выводится. Ее вставляем туда где должен выводится блок.
echo $block_contvbb; // выводится блок прямо в эттом файле
?>
Для теста запускаем в браузере файл forum.php
Если нужно в других местах выводить, то надо закоментировать последнюю строку и раскоментировать #return $block_contvbb;, эту переменную вставить в другие места.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху