|
|
|
| Хочу сделать свой Rss-канал, т.е. из моей базы выводятся новости (заголовок, номер и дата) и потом чтоб в ленте можно было при нажатии на заголовок переходить на мой сайт для подробного ознакомления.
Сделал файл Rss.xml но не работает. Посмотрите, кто уже это проехал, что не так???
<?
header("content-type: application/rss+xml");
echo "<?xml version=\"1.0\" encoding=\"windows-1251\"?>
<rss version=\"2.0\"><channel>
<title>Новости сайта</title>
<link>http://site.ru</link>
<description>Свежие новости сайта</description>
<language>ru-ru</language>";
include("bd_config.php"); //конфигурация базы
$rez=mysql_query("select nomer, news, date from list_news ORDER BY `date` DESC LIMIT 10");
while ($str=mysql_fetch_array($rez))
{
$nomer=$str['nomer'];$news=$str['news'];$date=$str['date'];
echo "<item>
<title>$news</title>
<link>http://site.ru/news.htm?n=$nomer</link>
<pubDate>$date</pubDate>
<guid>http://site.ru/news.htm?n=$nomer</guid>
</item>";
}
echo "</channel></rss>";
?>
|
| |
|
|
|
|
|
|
|
для: Владимир22
(02.11.2007 в 04:06)
| | Проверил ваш скрипт, у меня все отлично работает, а в чем выражена не работа? | |
|
|
|
|
|
|
|
для: zavragnov
(02.11.2007 в 10:48)
| | Выдаёт: ОШИБКА ПРИ ОБРАБОТКЕ РЕСУРСА, строка 1....
А надо для xml-файлов что-то прописывать в .hracces
а то при просмотре кода (rss.xml), там отображается весь php-код
??? | |
|
|
|
|
|
|
|
для: Владимир22
(02.11.2007 в 14:09)
| | Расширение *.php должно быть, конечно. | |
|
|
|
|
|
|
|
для: Владимир22
(02.11.2007 в 14:09)
| | .htaccess:
RemoveHandler .html .htm .php. .xml
AddType application/x-httpd-php .php .xml
|
Кажется так | |
|
|
|
|
|
|
|
для: pina
(02.11.2007 в 14:34)
| | Спасибо всем - помогло. И ищё вопрос по дате:
у меня новости из базы выводся в формате: 2007-11-02 15:26:08
Но видел на других лентах, там дата, типа такая: Fri, 02 Nov 2007 15:26:08 +0200
Кто уже в курсе, подскажите как перевести в моём случае для Rss по московскому времени??? | |
|
|
|
|
|
|
|
для: Владимир22
(02.11.2007 в 17:11)
| | Люди! HELP! Как перевести дату, типа: 2007-11-02 17:11:07 в RFC 2822 для RSS-канала??? Нигде никто не знает :( | |
|
|
|
|
|
|
|
для: Владимир22
(02.11.2007 в 18:30)
| | Открываем мануал MySQL с функциями для работы с датой и временем. Находим DATE_FORMAT().
Составляем формат (второй аргумент):
%a Abbreviated weekday name (Sun..Sat)
%e Day of the month, numeric (0..31)
%b Abbreviated month name (Jan..Dec)
%Y Year, numeric, four digits
%T Time, 24-hour (hh:mm:ss)
|
Теперь запрос:
SELECT ..., DATE_FORMAT(`date`, '%a, %e %b %Y %T') as `dt` FROM `tbl`;
|
К полученной дате остается добавить различие с Гринвическим временем: date('O') | |
|
|
|
|
|
|
|
для: Unkind
(02.11.2007 в 20:14)
| |
$rez=mysql_query("select nomer, news, date from list_news ORDER BY `date` DESC LIMIT 10");
while ($str=mysql_fetch_array($rez))
{
$date=$str['date']; // это дата в базе, например, такая: 2007-11-02 19:36:25
$date=strftime('%a, %e %b %Y %T+02:00',$date); // НЕ РАБОТАЕТ!
echo $date;// нужно вывести так: Fri, 02 Nov 2007 19:36:25 +0200
}
|
HELP! Замучался с разными вариантами - никак не хочет правильно переводиться.
Unkind или другие профи, помогите с конкретным решением! | |
|
|
|
|
|
|
|
для: Владимир22
(02.11.2007 в 22:10)
| | Ну если взять с базы дату, то брать ее в UNIX_TIMESTAMP, а потом:
date('r', $date)
Видимо так. | |
|
|
|
|
|
|
|
для: sim5
(02.11.2007 в 22:19)
| | Всё! Всем спасибо - всё успешно разрешилось! Да здравствует форум softtime.ru ! | |
|
|
|
|
|
|
|
для: Владимир22
(02.11.2007 в 22:25)
| | Люди, помогите!
Ставлю дату в файле xml:
...................................
$date=$str['date']; это вынимается из базы, формат такой: 2007-11-02 19:36:25
$dat=strtotime($date);
$date=strftime('%a, %e %b %Y %T+0200',$dat); // перевод в формат для RSS
Получается вроде нормально, если смотреть сам файл Rss.xml
но при чтении из RSS-ридера (Freedreader 3.11) всё выводится на 3 часа больше.
И сколько бы не ставил (+0200, даже +100000) всё равно такая ерунда - на 3 часа больше и всё. Как исправить, кто в курсе??? Знатоки, отзовитесь!!!! HELP!!!!
И ещё: какую дату надо ставить в <lastBuildDate> - где брать эту дату? Это дата последней новости или что-то другое ? | |
|
|
|