• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

[ищу] последние сообщения SMF

Статус
В этой теме нельзя размещать новые ответы.

E-body

C.D.\Zennoposter проекты на заказ
Регистрация
6 Сен 2007
Сообщения
997
Реакции
343
Помимо интеграции dle+smf от kaliostro, есть ли такой мод для DLE чтоб выводил последние сообщения с форума SMF ?

В крайняк согласен скинуться с кем нибудь на мод интеграции форума и дле от kaliostro.:-]
 
Поищи на сайте SMF вывод последних сообщений с форума.
 
Нашел код для Danneo cms, вопрос теперь по другому, как его прикрутить к движку DLE чтоб можно было в шаблоне указав тег {last_topic} вставит вывод последних сообщений в любом месте сайта.
Кодеры помогитяяя :thenks:

PHP:
<?php 
if(!defined("DNREAD")) exit(); 
global $conf;    
unset($bt);    
$bt = "";    
ob_start(); 
require('/home/sait/public_html/forum/SSI.php'); 
ssi_recentTopics(); 
flush(); 
$output = ob_get_contents();    
ob_end_clean();    
$bt = $output;    
return $bt;    
?>

ещё вариант

PHP:
<?php

include_once("Settings.php");
//$timeformatstring1 = "%B %d, %Y, %I:%M:%S %p";
$dbcon = mysql_connect($db_server,$db_user,$db_passwd);
mysql_select_db ($db_name);
if ($limit == null)
{
        $limit = 10;
}

$lasttop = mysql_query("SELECT ID_TOPIC,subject,posterName,posterEmail,posterTime,ID_MEMBER  FROM wdn_messages ORDER BY ID_MSG DESC LIMIT $limit ");
$thead = "<table cellpadding=2 cellspacing=2 border=0 width=100%>";
echo "document.writeln('$thead');";
for($i=0; $i<mysql_numrows($lasttop); $i++)
{
$tlist=mysql_fetch_array($lasttop);
$posttimestr = date("H:i",$tlist[posterTime]);
//$posttime = strftime($timeformatstring,$tlist[posterTime]);
//$posttimestr = substr($posttime,strrpos($posttime,",")+1,9);
$topicsel = mysql_query("SELECT ID_TOPIC,ID_BOARD FROM wdn_topics WHERE ID_TOPIC = $tlist[ID_TOPIC]");
$topicstr=mysql_fetch_array($topicsel);
$boardID = $topicstr[ID_BOARD];
$boardsel = mysql_query("SELECT ID_BOARD,name FROM wdn_boards WHERE ID_BOARD = $boardID");
$boardstr=mysql_fetch_array($boardsel);
$boardname = $boardstr[name];
$postername = rawurlencode($tlist[posterName]);
if ($tlist[ID_MEMBER]!= (-1)){
$temptr = "<tr><td valign=top bgcolor=#F5F5F5 width=30% align=left valign=top><a target=_blank target=_blank href=http://www.forum.bryansktalk.ru/index.php?board=$boardID><b>[$boardname]</b></a></td><td valign=top bgcolor=#F5F5F5 width=30%><a target=_blank target=_blank href=http://www.forum.bryansktalk.ru/index.php?board=$boardID;action=display;threadid=$tlist[ID_TOPIC];start=10000#lastpost>".substr($tlist[subject],0,25)."...</a></td><td valign=top bgcolor=#F5F5F5 width=20%>автор:<br>  <a target=_blank href=http://www.forum.bryansktalk.ru/index.php?action=viewprofile;user=$postername>$tlist[posterName]</a></td><td valign=top bgcolor=#F5F5F5  width=35% align=right><b> в $posttimestr</b></td></tr>";
echo "document.writeln ('$temptr');";
} else {
if ($tlist[ID_MEMBER]= (-1))
$temptr = "<tr><td valign=top bgcolor=#F5F5F5 width=30% align=left valign=top><a target=_blank target=_blank href=http://www.forum.bryansktalk.ru/index.php?board=$boardID><b>[$boardname]</b></a></td><td valign=top bgcolor=#F5F5F5 width=30%><a target=_blank target=_blank href=http://www.forum.bryansktalk.ru/index.php?board=$boardID;action=display;threadid=$tlist[ID_TOPIC];start=10000#lastpost>$tlist[subject]</a></td><td valign=top bgcolor=#F5F5F5 width=20%>автор:<br> $tlist[posterName]</td><td valign=top bgcolor=#F5F5F5 width=35% align=right><b>Сегодня</b> в $posttimestr</td></tr>";
echo "document.writeln('$temptr');";
}
}
$tfoot = "</table>";
echo "document.writeln('$tfoot');";

mysql_close();
exit;
?>
 
Ну а зачем переменная? Можно просто вставить php код в шаблон.
 
Еслиб я ещё толково знал php, сам сделал.
Так приходиться кляньчить;)
Ну для меня написать этот скрипт то самое как посадить боинг самостоятельно.
 
Создай файл last.php в корне форума (там скорее всего должен быть Settings.php) и потом сделай инклуд файла last.php в шаблон, при этом не забудь включить выполнение php вставок в шаблоне в DLE.
Непоняяяяяяяяяяяяяяяяяяяятно?
 
ssi_examples.php вызвать из корня форума и помсотреть что он будет предлагать. а предложит много :))


ЗЫ. справку всетаки надо иногда читать. через эту функцию форум выводдит практически всё. там только надо параметры указать и сделать инклюд этого файла
 
Вообщем обмозговал, но пробовать пока не стал.

1. dle index.php Найти строчку:
PHP:
echo $tpl->result['main'];

Заменить её на:
PHP:
eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');

Это замена добавит следующее, теперь страница main.tpl - это основной
шаблон скина, будет обрабатывать PHP!
на безопасность скрипта не влияет ни чем!


2. В корне форума создать файл lastsmf.php
PHP:
<?php ssi_recentPosts(); ?>

3. Тепер в любое место можно ставить вызов последних ответов с форума на сайт.
main.tpl вставить код
<? include_once forum.'/lastsmf.php '; ?>
Вывод всякой информации с форума smf, пример:


Что на это скажите PHP гуру?
 
1.именно так
2. в майнтпл

в самый верх до html
<?php require("/home/g/ge444ru/a444/forum/public_html/SSI.php"); ?>
потом в нужном месте вызываем
<?php ssi_recentPosts(); ?>

никаких файлов создавать не надо. еще раз говорю, вызовите на форуме ssi_examples.php и там вам на чисто русском языке выдадут
<?php require("/home/g/ge444ru/a444/forum/public_html/SSI.php"); ?>

а потом ниже варианты того что надо вывести
<?php ssi_recentPosts(); ?>
Recent Poll Function: <?php ssi_recentPoll(); ?>
Top Boards Function: <?php ssi_topBoards(); ?>
Top Topics by View Function: <?php ssi_topTopicsViews(); ?>

и еще куча всего и будет показано как это выглядит.


ЗЫ. народ..я вообще балдею с вас. ну не бывает же настолько лень один файл открыть...
 
Тема сисек раскрыта, вобщем всем спасибо.
Работает.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху