Вывод заголовоков.

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

Вывод заголовоков.

Сообщение souriz » 25 сен 2008, 14:15

На главной странице вашего проекта находиться таблица с заголовками последних статей блога. Уважаемый root подскажите пожалуйста скрипт на котором работает данный вывод.
Аватара пользователя
souriz
новичок
 
Сообщения: 7
Зарегистрирован: 07 сен 2008, 14:51
Откуда: /root

Re: Вывод заголовоков.

Сообщение root » 25 сен 2008, 14:26

php :)
самописный

он же используется тут: http://subnets.ru/wrapper.php?p=99
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1894
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Вывод заголовоков.

Сообщение root » 25 сен 2008, 14:55

Код: Выделить всё
<?
$ret=get_rss("http://subnets.ru/blog/?feed=rss2");
print "<table align=\"center\">";
printf("<tr><td class=head><a href=\"%s\" target=\"_blank\"><img src=\"img/rss.png\" border=\"0\" alt=\"RSS\" title=\"RSS\"></a></td><td class=head>%s</td></tr>",$u,$ret['rss_link'],$ret['rss_title'],$ret['rss_message']);
foreach ($ret['rss_mess_title'] as $tk=>$tv){
         printf("<tr><td class=head>%s</td><td class=head3>%s</td>",$tk+1,date("d.m.Y H:i",strtotime($ret['rss_mess_date'][$tk])));
         printf("<td class=head3><a href=\"%s\" target=\"_blank\">%s</a></td></tr>",$ret['rss_mess_link'][$tk],$ret['rss_mess_title'][$tk]);
         if ($tk+1==5){
              break;
         }
}
print "</table>";
?>


сама функция get_rss:
Код: Выделить всё
<?
function get_rss($url){
        $handle = fopen($url, "rb");
        $contents = '';
        while (!feof($handle)) {
                $contents .= fread($handle, 8192);
        }
        fclose($handle);
        $dom = new DOMDocument;
        $dom->loadxml($contents);
        if (!$dom) {
            echo 'Error while parsing the document';
            exit;
        }
        $s = simplexml_import_dom($dom);
        $p = xml_parser_create();
        xml_parse_into_struct($p, $contents, $vals, $index);
        $from_enc=xml_parser_get_option($p,XML_OPTION_TARGET_ENCODING);
        xml_parser_free($p);
        $res['rss_title']=iconv($from_enc,"CP1251",$s->channel[0]->title);
        $res['rss_link']=iconv($from_enc,"CP1251",$s->channel[0]->link);
        $res['rss_message']=iconv($from_enc,"CP1251",$s->channel[0]->description);
        foreach ($s->channel[0]->item as $k=>$v){
                $res['rss_mess_title'][]=iconv($from_enc,"CP1251",$v->title);
                $res['rss_mess_body'][]=iconv($from_enc,"CP1251",$v->description);
                $res['rss_mess_link'][]=iconv($from_enc,"CP1251",$v->link);
                $res['rss_mess_date'][]=date("d.m.Y H:i:s",strtotime(iconv($from_enc,"CP1251",$v->pubDate)));
        }
        return $res;
}
?>

функция get_rss может использоваться для вывода любых RSS, она возвращает массив $res
полное использование данных этого массива как раз в http://subnets.ru/wrapper.php?p=99
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1894
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Вывод заголовоков.

Сообщение souriz » 25 сен 2008, 16:40

Спасибо Вам огромное.
Аватара пользователя
souriz
новичок
 
Сообщения: 7
Зарегистрирован: 07 сен 2008, 14:51
Откуда: /root

Re: Вывод заголовоков.

Сообщение lehisnoe » 25 сен 2008, 19:54

Да, Дима забыл сказать, что для работы этого безобразия нужен php 5.x
No users
No troubles
No money
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
lehisnoe
Site Admin
 
Сообщения: 539
Зарегистрирован: 11 июн 2008, 14:09
Откуда: Moscow

Re: Вывод заголовоков.

Сообщение souriz » 26 сен 2008, 10:55

Ну это и так понятно.
Аватара пользователя
souriz
новичок
 
Сообщения: 7
Зарегистрирован: 07 сен 2008, 14:51
Откуда: /root


Вернуться в Проект Subnets.ru

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4