Hallo, ich benutze ein Newsscript ( von www.stylemotion.de ) das die Nachrichten auch in einem RSS Feed ausgibt. Leider gibt es Probleme mit den Umlauten wegen denen man den Feed nicht mit Firefox/Thunderbird abonnieren kann und auch einige andere Reader machen Probleme.
Umlaute werden nicht normal als ä. ö. oder ü ausgegeben, sondern in einem Code der auch Problemlos vom Browser erkannt wird, aber eben nicht von den Feedreadern.
"ä" = "& a u m l ;"
(hab zwischen jedem Zeichen eine Leertaste gemacht, weil es sonst umgeändert wird)
Der Code aus dem Script sieht wie folgt aus:
und die Datei die den RSS Feed hinterher ausgibt sieht so aus
Kann mir da einer weiterhelfen? Ich hab wirklich keien Ahnung, was ich jetzt noch machen kann. Der Autor des Scriptes hat keine Lust sich dem Problem anzunehmen, da er an einem anderen Projekt arbeitet und bis jetzt konnte mir niemand anderes helfen.
Wäre nett, wenn mir jemand dabei helfen könnte.
Mit besten Grüßen
Sabine
Umlaute werden nicht normal als ä. ö. oder ü ausgegeben, sondern in einem Code der auch Problemlos vom Browser erkannt wird, aber eben nicht von den Feedreadern.
"ä" = "& a u m l ;"
(hab zwischen jedem Zeichen eine Leertaste gemacht, weil es sonst umgeändert wird)
Der Code aus dem Script sieht wie folgt aus:
PHP-Code:
//*********************************************************
//**************** PARSER: RSS-FEEDBACK *****************
//*********************************************************
//Sicherheitsabfrage
if ( !is_object($this) ) {
echo"FEHLER: Das Script wurde falsch eingebunden!
Alle Dateien aus dem Ordner
"parse"
sind NICHT zum includen bestimmt. Lesen Sie die
Readme um WEB//NEWS richtig einzubinden.";
return;
}
//Newskats
if ( $this->set['usekats'] ) {
$this->query("SELECT id,name FROM ".PRE."_newscat");
while($res=$this->fetch()) $cat[$res['id']]=$this->replace($res['name']);
$this->free();
}
echo'<?xml version="1.0" encoding="ISO-8859-1"?>'."\n";
?>
<rss version="2.0">
<channel>
<title><?=$this->set['title']; ?></title>
<link><?=$this->set['http'].$this->set['newspage'].
$this->iif($this->set['newsparams'],"?".
$this->set['newsparams']); ?></link>
<description>Newsfeed von:
[url]www.meine-seite.de[/url]</description>
<generator>Webnews 1.4 -
[url]www.stylemotion.de[/url]</generator>
<?php
$this->query("SELECT id,catid,pubtime,ext_user,topic,text FROM ".PRE."_news
WHERE ( ( pubtime AND pubtime<='".time()."' )
AND ( endtime='0' OR endtime>'".time()."' ) ) ORDER BY pubtime DESC LIMIT 20");
while($res=$this->fetch()) {
//Text parsen
list($res['text'])=explode("[MEHR]",
eregi_replace("\[mehr\]","[MEHR]",$res['text']));
if ( $this->set['usehtml'] && eregi("[html]",$res['text']) && eregi("[/html]",
$res['text']) ) {
$thetext=$this->codes($this->replace(preg_replace("/\[html\](.*?)\[\/html\]/sie", "\
$this->htmlcodecache('\\1')",$this->aliases($res['text']))),
$this->set['useimg']);
if ( is_array($this->htmlcode) ) foreach($this->htmlcode AS $key => $value)
$thetext=str_replace("%HTMLCODE#".$key."%",$value,$thetext);
}
else $thetext=$this->codes($this->replace($this->aliases($res['text'])),
$this->set['useimg']);
?>
<item>
<title><?=$this->replace($res['topic'],1); ?></title>
<description><?=strip_tags(str_replace("\r","",str_replace("\n"," ",$thetext))); ?>
</description>
<category><?=$cat[$res['catid']] ?></category>
<pubDate><?=date("r",$res['pubtime']) ?></pubDate>
<link><?=$this->set['http'].$this->set['newspage'].'?id='.
$res['id'].$this->iif($this->set['newsparams'],"&".
$this->set['newsparams']); ?></link>
</item>
<?php
}
$this->free();
?>
</channel>
</rss>
PHP-Code:
<?php
$WN_BASEDIR=dirname(__file__);
require($WN_BASEDIR."/parse/parser.php");
//Execute Script
$WN->wnprint("rss");
?>
Wäre nett, wenn mir jemand dabei helfen könnte.
Mit besten Grüßen
Sabine
Kommentar