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

Тема в разделе "DLE", создана пользователем E-body, 6 фев 2008.

Информация :
Актуальная версия DataLife Engine 11.2
( Final Release v.11.2 | Скачать DataLife Engine | Скачать 11.2 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.1 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. E-body

    E-body

    Регистр.:
    6 сен 2007
    Сообщения:
    980
    Симпатии:
    315
    Помимо интеграции dle+smf от kaliostro, есть ли такой мод для DLE чтоб выводил последние сообщения с форума SMF ?

    В крайняк согласен скинуться с кем нибудь на мод интеграции форума и дле от kaliostro.:-]
     
  2. Jerry

    Jerry тот самый Учиха

    Регистр.:
    16 апр 2006
    Сообщения:
    1.226
    Симпатии:
    489
    Поищи на сайте SMF вывод последних сообщений с форума.
     
  3. E-body

    E-body

    Регистр.:
    6 сен 2007
    Сообщения:
    980
    Симпатии:
    315
    Нашел код для 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;
    ?>
     
  4. Jerry

    Jerry тот самый Учиха

    Регистр.:
    16 апр 2006
    Сообщения:
    1.226
    Симпатии:
    489
    Ну а зачем переменная? Можно просто вставить php код в шаблон.
     
  5. E-body

    E-body

    Регистр.:
    6 сен 2007
    Сообщения:
    980
    Симпатии:
    315
    Еслиб я ещё толково знал php, сам сделал.
    Так приходиться кляньчить;)
    Ну для меня написать этот скрипт то самое как посадить боинг самостоятельно.
     
  6. Jerry

    Jerry тот самый Учиха

    Регистр.:
    16 апр 2006
    Сообщения:
    1.226
    Симпатии:
    489
    Создай файл last.php в корне форума (там скорее всего должен быть Settings.php) и потом сделай инклуд файла last.php в шаблон, при этом не забудь включить выполнение php вставок в шаблоне в DLE.
    Непоняяяяяяяяяяяяяяяяяяяятно?
     
  7. dm_mb

    dm_mb

    Регистр.:
    6 июн 2006
    Сообщения:
    610
    Симпатии:
    122
    ssi_examples.php вызвать из корня форума и помсотреть что он будет предлагать. а предложит много :))


    ЗЫ. справку всетаки надо иногда читать. через эту функцию форум выводдит практически всё. там только надо параметры указать и сделать инклюд этого файла
     
    E-body нравится это.
  8. E-body

    E-body

    Регистр.:
    6 сен 2007
    Сообщения:
    980
    Симпатии:
    315
    Вообщем обмозговал, но пробовать пока не стал.

    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 вставить код
    Вывод всякой информации с форума smf, пример:
    http://www.simplemachines.ru/ssi_examples.php

    Что на это скажите PHP гуру?
     
  9. dm_mb

    dm_mb

    Регистр.:
    6 июн 2006
    Сообщения:
    610
    Симпатии:
    122
    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(); ?>

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


    ЗЫ. народ..я вообще балдею с вас. ну не бывает же настолько лень один файл открыть...
     
    E-body нравится это.
  10. E-body

    E-body

    Регистр.:
    6 сен 2007
    Сообщения:
    980
    Симпатии:
    315
    Тема сисек раскрыта, вобщем всем спасибо.
    Работает.
     
Статус темы:
Закрыта.