Чтение RSS каналов

Форум

Открыть Ответить

Что с RSS?

0

0
1
20.11.2009 22:44:32

У меня СЛАЕД 2.5.

Такая проблема - не работает RSS-канал. При переходе по ссылке www.мойсайт.ru/rss.php вылезает вот такое чудо:

http://s54.radikal.ru/i145/0911/8e/749dc7ae8ffe.jpg
(27кб)

На других сайтах на точной такой же системе - всё ок.



Версия PHP: PHP 4
Сервер: Сервер в интернете
3.91

3.91
2
20.11.2009 23:30:1220.11.2009 23:52:44

Goshan, а раньше работало?

У Вас пробелы в первой строке:

1: <?xml version="1.0" encoding="windows-1251"?>
такого быть не должно, при обработке RSS до этой строки должно быть ноль байт.
Проверьте файл RSS.PHP, строку:
echo "<?xml version=\"1.0\" encoding=\""._CHARSET."\"?>\n"

100% дело именно в ней...

3.92

3.92
3
21.11.2009 09:57:57

Может я и не прав, но дело случайно не в пробеле перед первой стройкой?

3.96

3.96
4
21.11.2009 12:16:25

Вот она, первая строка...

echo "<?xml version=\"1.0\" encoding=\""._CHARSET."\"?>\n"


Понимаете, этот же файл нормально работает на другом сайте на Слаеде (я переливал).

3.91

3.91
5
21.11.2009 12:21:2221.11.2009 12:22:53

хотя да, видимо дело в ней.... я попробовал убрать её, и заработало, но необходимо вернуть её.

Возвращаю первую строку, скокировав из вашего поста, опять выдаёт эту ошибку.

3.91

3.91
6
21.11.2009 12:28:16

Ну я просто вижу саму ошибку на скрине, и вижу пробелы в первой строке. Они не могут взяться из воздуха.
Не исключаю, что на другом сайте будет работать, если сайт у другого хостера.

Есть еще вариант, но он спорный. Такие глюки у RSS часто встречаются, если в контенте использовать русские кавычки «ёлочками»...

3.92

3.92
7
21.11.2009 12:30:13

Скопируйте этот код в Ваш файл без изменений и сохраните, только делайте это в блокноте.

&lt;&#063;php<br /> define(&quot;MODULE_FILE&quot;, true);<br /> include(&quot;function/function.php&quot;);<br /> get_lang();<br /> Header(&quot;Content-Type: application/rss+xml&quot;);<br /> Header(&quot;Content-Encoding: none&quot;);<br /> <br /> echo &quot;&lt;&#063;xml version=&#092;&quot;1.0&#092;&quot; encoding=&#092;&quot;&quot;._CHARSET.&quot;&#092;&quot;&#063;&gt;&#092;n&quot;<br /> .&quot;&lt;rss version=&#092;&quot;2.0&#092;&quot;&gt;&#092;n&quot;<br /> .&quot;&lt;channel&gt;&#092;n&quot;<br /> .&quot;&lt;title&gt;&quot;.htmlspecialchars($sitename).&quot;&lt;/title&gt;&#092;n&quot;<br /> .&quot;&lt;link&gt;&quot;.$homeurl.&quot;&lt;/link&gt;&#092;n&quot;<br /> .&quot;&lt;description&gt;&quot;.htmlspecialchars($site_logo).&quot;&lt;/description&gt;&#092;n&quot;<br /> .&quot;&lt;generator&gt;SLAED CMS &quot;.$version.&quot;&lt;/generator&gt;&#092;n&quot;<br /> .&quot;&lt;copyright&gt;Copyright (c) SLAED CMS &quot;.$version.&quot;&lt;/copyright&gt;&#092;n&quot;<br /> .&quot;&lt;language&gt;&quot;.htmlspecialchars(substr(&quot;&quot;._LOCALE.&quot;&quot;, 0, 2)).&quot;&lt;/language&gt;&#092;n&quot;<br /> .&quot;&lt;lastBuildDate&gt;&quot;.date(&quot;D, j M Y H:m:s O&quot;).&quot;&lt;/lastBuildDate&gt;&#092;n&#092;n&quot;;<br /> <br /> if (intval($_GET[&#039;limit&#039;]) || intval($_POST[&#039;limit&#039;])) {<br /> $limit = substr(trim(isset($_POST[&#039;limit&#039;]) &#063; $_POST[&#039;limit&#039;] : $_GET[&#039;limit&#039;]), 0, 2);<br /> if (eregi(&quot;[^0-9]&quot;, $limit)) $limit = &quot;10&quot;;<br /> } else {<br /> $limit = &quot;10&quot;;<br /> }<br /> if (intval($_GET[&#039;cat&#039;]) || intval($_POST[&#039;cat&#039;])) {<br /> $cat = substr(trim(isset($_POST[&#039;cat&#039;]) &#063; $_POST[&#039;cat&#039;] : $_GET[&#039;cat&#039;]), 0, 3);<br /> if (eregi(&quot;[^0-9]&quot;, $cat)) $cat = &quot;&quot;;<br /> } else {<br /> $cat = &quot;&quot;;<br /> }<br /> if (isset($_GET[&#039;mod&#039;]) || isset($_POST[&#039;mod&#039;])) {<br /> $mod = substr(trim(isset($_POST[&#039;mod&#039;]) &#063; $_POST[&#039;mod&#039;] : $_GET[&#039;mod&#039;]), 0, 25);<br /> if (eregi(&quot;[^a-zA-Z_]&quot;, $mod)) $mod = &quot;&quot;;<br /> } else {<br /> $mod = &quot;&quot;;<br /> }<br /> <br /> if ($mod == &quot;Files&quot;) {<br /> $where = ($cat) &#063; &quot;WHERE cid=&#039;$cat&#039; AND status !=&#039;0&#039;&quot; : &quot;WHERE status !=&#039;0&#039;&quot;;<br /> $result = $db-&gt;sql_query(&quot;SELECT lid, title, description, date FROM &quot;.$prefix.&quot;_files &quot;.$where.&quot; ORDER BY lid DESC LIMIT &quot;.$limit.&quot;&quot;);<br /> while (list($rlid, $rtitle, $rdescription, $rdate) = $db-&gt;sql_fetchrow($result)) {<br /> echo &quot;&lt;item&gt;&#092;n&quot;<br /> .&quot;&lt;title&gt;&quot;.htmlspecialchars($rtitle).&quot;&lt;/title&gt;&#092;n&quot;<br /> .&quot;&lt;guid&gt;$homeurl/index.php&#063;name=Files&amp;amp;op=view_file&amp;amp;lid=$rlid&lt;/guid&gt;&#092;n&quot;<br /> .&quot;&lt;description&gt;&quot;.htmlspecialchars(bb_decode($rdescription)).&quot;&lt;/description&gt;&#092;n&quot;<br /> .&quot;&lt;comments&gt;$homeurl/index.php&#063;name=Files&amp;amp;op=view_file&amp;amp;lid=$rlid#$rlid&lt;/comments&gt;&#092;n&quot;<br /> .&quot;&lt;pubDate&gt;&quot;.htmlspecialchars(date(&quot;D, j M Y H:m:s O&quot;, strtotime($rdate))).&quot;&lt;/pubDate&gt;&#092;n&quot;<br /> .&quot;&lt;/item&gt;&#092;n&#092;n&quot;;<br /> }<br /> } else {<br /> $where = ($cat) &#063; &quot;WHERE topic=&#039;$cat&#039; AND time&lt;=NOW() AND status=&#039;1&#039;&quot; : &quot;WHERE time&lt;=NOW() AND status=&#039;1&#039;&quot;;<br /> $result = $db-&gt;sql_query(&quot;SELECT sid, title, time, hometext FROM &quot;.$prefix.&quot;_stories &quot;.$where.&quot; ORDER BY sid DESC LIMIT &quot;.$limit.&quot;&quot;);<br /> while (list($rsid, $rtitle, $rtime, $rhometext) = $db-&gt;sql_fetchrow($result)) {<br /> echo &quot;&lt;item&gt;&#092;n&quot;<br /> .&quot;&lt;title&gt;&quot;.htmlspecialchars($rtitle).&quot;&lt;/title&gt;&#092;n&quot;<br /> .&quot;&lt;guid&gt;$homeurl/index.php&#063;name=News&amp;amp;op=article&amp;amp;sid=$rsid&lt;/guid&gt;&#092;n&quot;<br /> .&quot;&lt;description&gt;&quot;.htmlspecialchars(bb_decode($rhometext)).&quot;&lt;/description&gt;&#092;n&quot;<br /> .&quot;&lt;comments&gt;$homeurl/index.php&#063;name=News&amp;amp;op=article&amp;amp;sid=$rsid#$rsid&lt;/comments&gt;&#092;n&quot;<br /> .&quot;&lt;pubDate&gt;&quot;.htmlspecialchars(date(&quot;D, j M Y H:m:s O&quot;, strtotime($rtime))).&quot;&lt;/pubDate&gt;&#092;n&quot;<br /> .&quot;&lt;/item&gt;&#092;n&#092;n&quot;;<br /> }<br /> }<br /> echo &quot;&lt;/channel&gt;&#092;n&quot;;<br /> echo &quot;&lt;/rss&gt;&quot;;<br /> &#063;&gt;

3.92

3.92
8
21.11.2009 12:35:16

GRAFLEKX,

Скопируйте этот код в Ваш файл без изменений и сохраните, только делайте это в блокноте.



Абсолютно та же самая ошибка Смайл - 04

3.91

3.91
9
21.11.2009 12:35:5721.11.2009 12:41:09

Такие глюки у RSS часто встречаются, если в контенте использовать русские кавычки «ёлочками»...



Не, я такие не использую..


• IE Говорит:


Internet Explorer не может отобразить этот веб-канал

Этот веб-канал содержит ошибки в коде.



• Мозилла предлагает сохранить файл rss . php

• Опера - вы уже видели.



Сохранил через мозиллу, открыл...
Вначале действительно видно пробелы, но откуда они взялись?

http://s40.radikal.ru/i089/0911/0d/626b38a6f342.jpg

3.91

3.91
10
21.11.2009 12:40:57

Goshan, ну вот это уже очень странно. Должно работать по идее, если нет косяков где-то еще.

Короче так на "ощупь" не реально понять где ошибка - нужно ковырять код сайта, а делать это можно только по FTP...

3.92

3.92
Открыть Ответить
Хотите опробовать SLAED CMS в действии?

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь