За последние 24 часа нас посетили 34230 программистов и 1748 роботов. Сейчас ищут 1236 программистов ...

Не могу создать RSS помогите!!!

Тема в разделе "PHP для новичков", создана пользователем LeXXXX35, 22 апр 2011.

  1. LeXXXX35

    LeXXXX35 Активный пользователь

    С нами с:
    30 сен 2010
    Сообщения:
    41
    Симпатии:
    0
    Здравствуйте, проблема такая, на сайте попросили создать рсс канал, вобщем я новичок, и канал создается кривовато, то отображается одна новость, то вообще ничего. Помогите кто может. Вот код файла rss.php

    PHP:
    1.  
    2. <?php
    3. include_once 'inc/connect.php';
    4. $z=mysql_query("SELECT * FROM news ORDER BY `id` DESC LIMIT 10");
    5. echo '<?xml version="1.0"?>
    6. <rss version="2.0">
    7.  <channel>
    8.    <title>Новости ООО "Гостиничный комплекс Империя"</title>
    9.    <link>http://imperiumokha.com</link>
    10.    <description>Последние новости ООО "Гостиничный комплекс Империя"</description>
    11.    <language>ru-ru</language>
    12.    <pubDate>'.date('d.m.Y - H.i.s').'</pubDate>
    13.    
    14.    <lastBuildDate>'.date('d.m.Y - H.i.s').'</lastBuildDate>
    15.    <docs>http://imperiumokha.com/rss.php</docs>';
    16. $z=mysql_query("SELECT * FROM news ORDER BY `id` DESC LIMIT 10");
    17. while ($r=mysql_fetch_array($z))
    18. {
    19.    
    20. echo '<item>
    21.      <title>'.htmlspecialchars($r['head_rus']).'</title>
    22.      <link>http://imperiumokha.com/index.php?page=news&id='.$r['id'].'</link>
    23.      <description>'.htmlspecialchars($r['short_rus']).'</description>
    24.      <pubDate>'.date('d.m.Y - H.i.s').'</pubDate>
    25.      <guid>http://imperiumokha.com/index.php?page=news&id='.$r['id'].'</guid>
    26.    </item>';
    27. }    
    28. echo '</channel>
    29. </rss>';
    30. ?>
    31.  
     
  2. LeXXXX35

    LeXXXX35 Активный пользователь

    С нами с:
    30 сен 2010
    Сообщения:
    41
    Симпатии:
    0
    Что никто не знает как реализовать, господа программисты? :( посмотрите код, где ошибка?
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    может и не знают. я например никогда с рсс не сталкивался.
     
  4. titch

    titch Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    847
    Симпатии:
    0
    очень странно реализованы подключения к базе. первый вызов опирается на старое подключение (которого может не быть), при этом результат нишде не используется, второй вызов опирается на подключение старое/новое в зависимости от того, был ли уже include файла. думаю где-то здесь собака порылась. сам feed-list составлен вроде верно, но я не парсер - на глазок валидность не проверю

    зы: писать в rss-ленте дату публикации взятую с текущего времени - это дурной тон. время ласт-билда берут по последней новости. время, указываемое в rss отдают в формате RFC 2822. другими словами - это date('r');
     
  5. LeXXXX35

    LeXXXX35 Активный пользователь

    С нами с:
    30 сен 2010
    Сообщения:
    41
    Симпатии:
    0
    Подключение да, немного просмотрел, в оригинале файла rss.php оно в самом верху, сейчас подправлю, с датой публикации тоже подправил, но все равно либо одна новость вылазит, либо просто пусто, ничего не пойму ((((
     
  6. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Я делал что-то подобное (в 2005-м для рнрВВ2)... сейчас код больше смех вызывает, но он работал...
     
  7. titch

    titch Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    847
    Симпатии:
    0
    если вы проверяете голый xml, то rss тут не при чём. проверяйте взаимодействие с базой. если же вы проверяете feed-reader'ом, то поправьте косяки, которые смогли найти (с датами в том числе) и код сюда. будем смотреть, что к чему.

    ps: feed-list он на то и feed, а не stationary-, к примеру. даже не продвинутый feed-reader помнит историю посещения ленты своего хозяина. те новости, которые владелец читал, FR не будет отображать. вроде так. потому отладку нужно вести на голом xml, а потом уже проеверять на реальной подписке