Welcome, Guest. Please login or register.
Did you miss your activation email?
May 27, 2012, 01:17:49 AM

Login with username, password and session length
Search:     Advanced search
Interested in joining the WebsiteBaker team?
For more Information read here or on our new website.
155554 Posts in 21715 Topics by 7737 Members
Latest Member: gx-world
* Home Help Search Login Register
Pages: [1] 2   Go Down
Print
Author Topic: RSS Feed funktioniert nicht  (Read 3983 times)
Kralle

Offline Offline

Posts: 14


WWW
« on: November 10, 2006, 01:33:46 AM »

Hallo zusammen,

ich möchte bei meiner Seite nun gerne RSS Feeds anbieten und dabei auf die WB-eigene rss.php zurückgreifen.

beim Aufruf von z. B.

http://www.domain.tld/modules/news/rss.php?page_id=11

erhalte ich allerdings folgende Fehlermeldung:

Quote
Notice: Constant PAGE_ID already defined in /srv/www/htdocs/webXXX/html/framework/class.frontend.php on line 140

Warning: Cannot modify header information - headers already sent by (output started at /srv/www/htdocs/webXXX/html/framework/class.frontend.php:140) in /srv/www/htdocs/webXXX/html/modules/news/rss.php on line 49
http://www.domain.tld[...Text...]WebsiteBaker Content Management System

Keine Ahnung, ob das Problem von Anfang an bestanden hat, hab mich erst jetzt damit beschäftigt. Ach ja, funktioniert ja nicht nur mit News-Seiten, oder? Hab eigentlich nur WYSIWYG- und Code-Seiten.
Logged
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #1 on: November 10, 2006, 06:42:53 AM »

Hmmm,

habe mit der rss.php noch nicht gearbeitet. Diese ist aber glaube ich dafür gedacht, dass man auf externen Seiten die News aus Wb anzeigen kann.

Wenn du deine letzten News deiner News Seite z.B. zusätzlich auf der Startseite angezeigt haben willst, solltest du ein anderes Code Snippet benutzen. Such mal im Forum nach "display news items everywhere".

Wenn du RSS Feeds von anderen Seiten auf deiner Seite anbieten willst solltest du den News reader von der Addons Repository benutzen.

Matthias
Logged
Kralle

Offline Offline

Posts: 14


WWW
« Reply #2 on: November 10, 2006, 10:40:52 AM »

Hallo Matthias,

hmm, nein, ich möchte eigentlich nicht die letzten Einträge einer bestimmten Seite anzeigen lassen, sondern für jede meiner (also nicht fremder) Seiten jeweils ein RSS Feed anbieten.

Hast du vielleicht ne grobe Ahnung woher die Fehlermeldung kommen könnte?
Logged
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #3 on: November 10, 2006, 11:02:37 AM »

Hallo,

kann dir nicht weiterhelfen, sorry.

Matthias
Logged
Kralle

Offline Offline

Posts: 14


WWW
« Reply #4 on: November 10, 2006, 11:12:54 AM »

Schade. Trotzdem Danke!
Logged
kweitzel
Forum administrator
*****
Offline Offline

Posts: 6977


WWW
« Reply #5 on: November 10, 2006, 01:32:14 PM »

Hi Kralle, ich denke, das Problem ist Tatsache das zurückverlinken in WB. Die RSS Feeds an sich funktionieren, ich habe die bei meiner Schwester laufen (so als Changelog).

Hast Du mal versucht, den RSS Feed in einem externen Reader (Thunderbird o.ä.) anzeigen zu lassen?

Gruß

Klaus
Logged

WebsiteBaker Org e.V. - for WebsiteBaker

kweitzel
Forum administrator
*****
Offline Offline

Posts: 6977


WWW
« Reply #6 on: November 10, 2006, 01:35:58 PM »

sorry, gany vergessen, da gibt es ein paar kleine Dinge, die mit Umlauten zu tuen haben. Versuch mal Deine RSS(.)php durch diese hier zu ersetzen ... die hat rsmith mir mal gemacht.

Die .txt Dateierweiterung bitte entfernen.

Gruß

Klaus
Logged

WebsiteBaker Org e.V. - for WebsiteBaker

Kralle

Offline Offline

Posts: 14


WWW
« Reply #7 on: November 10, 2006, 02:31:08 PM »

Hallo Klaus,

danke, hatte die rss.php bereits auch getestet. Ich hab jetzt mal ne Code-Änderung in der class.frontend.php vorgenommen:

Zeile 140

Code:
define('PAGE_ID', $this->page['page_id']);

hab ich ersetzt mit

Code:
if (!defined('PAGE_ID')) {
define('PAGE_ID', $this->page['page_id']);
}

Jetzt wird ein RSS-Feed erzeugt à la:

Quote
- <rss version="2.0">
- <channel>
  <title>Titeltext</title>
  <link>http://www.domain.tld</link>
  <description>Texttexttext</description>
  <language>DE</language>
  <copyright>http://www.domain.tld/rss.php?page_id=11</copyright>
  <managingEditor>webmaster@domain.tld</managingEditor>
  <webMaster>webmaster@domain.tld</webMaster>
  <category>Text</category>
  <generator>WebsiteBaker Content Management System</generator>
  </channel>
  </rss>

Allerdings sollte doch aber bei <link> folgendes stehen:

Quote

und bei <copyright> z. B.:

Quote
  <copyright>http://www.domain.tld</copyright>

Sehe ich es richtig, daß für die genaue URL der Unterseiten keine Globalen definiert sind, die ich entsprechend im rss.php einfügen kann? Also wäre eine separate mySQL-Abfrage notwendig, oder?

Optimal für das RSS-Feed wäre dann natürlich noch, daß beim Aufruf ohne page_id nicht auf die Startseite weitergeleitet wird, sondern z. B. eine Liste der 10 zuletzt modifizierten Seiten ausgegeben wird. Vermute mal, daß das bislang noch nicht vorgesehen ist.

Edit:

Zeile 39 in der rss.php

Code:
require_once('config.php');

Müsste natürlich auch noch wg. der WB_URL vor Zeile 27 stehen  wink
« Last Edit: November 10, 2006, 02:33:27 PM by Kralle » Logged
kweitzel
Forum administrator
*****
Offline Offline

Posts: 6977


WWW
« Reply #8 on: November 10, 2006, 03:43:30 PM »

Der Link Tag ist eigentlich nicht für die einzelnen Posts gedacht, sondern der GUID Tag ... Wenn ich das richtig verstanden habe, ist der Link Tag für die Homepage des RSS Feeds gedacht, daher auch der Verweis auf diese wink

Nach dem Generator Tag sollten dann die einzelnen ITEM Tags anfangen, wo dann auch die Links drin sind.

Öffne mal folgenden RSS Feed (WB Generiert): www.amithi.de/wb/modules/news/rss.php?page_id=1 ... ist die Seite von meiner Schwester, wo die oben gepostete rss(.)php zum Einsatz kommt.

Gruß

Klaus
Logged

WebsiteBaker Org e.V. - for WebsiteBaker

Kralle

Offline Offline

Posts: 14


WWW
« Reply #9 on: November 10, 2006, 05:49:24 PM »

Ah, danke Klaus. Beschäftige mich erst neu mit RSS-Feeds, also bitte verzeiht meine dummen Anfängerfragen  grin

Also Items werden bei mir keine aufgeführt, ich befürchte die sind für die News-Posts gedacht, oder? Ich hätte das RSS-Feed aber gerne für alle ("normalen") Seiten, jeweils mit der aktuellsten Änderung oben (also so wie bei den News-Posts).
Logged
kweitzel
Forum administrator
*****
Offline Offline

Posts: 6977


WWW
« Reply #10 on: November 10, 2006, 06:49:58 PM »

Nae ... das integrierte funktioniert nur mit dem Newspost ... aber ich glaube da hat mal jemand etwas im enlischsprachigen Forum drüber gepostet ... musst mal schauen.

Gruß

Klaus
Logged

WebsiteBaker Org e.V. - for WebsiteBaker

Kralle

Offline Offline

Posts: 14


WWW
« Reply #11 on: November 14, 2006, 12:06:35 PM »

Also im englischen Forum hab ich auch nichts Passendes gefunden. Hab mich also dran gesetzt, und die rss.php stark modifiziert:

Code:
<?php
require_once('config.php');
require_once(
WB_PATH.'/framework/class.frontend.php');
header("Content-type: text/xml; charset=utf-8" );
echo(
stripslashes('\<\?xml version=\"1.0\" encoding=\"utf-8\"\?\>'));
$number 30;
?>



<rss version="2.0">

  <channel>
    <title><?php echo WEBSITE_TITLE?></title>
    <link>http://<?php echo $_SERVER['SERVER_NAME']; ?></link>
    <description><?php echo WEBSITE_DESCRIPTION?></description>
    <language><?php echo DEFAULT_LANGUAGE?></language>
    <managingEditor><?php echo SERVER_EMAIL?></managingEditor>
    <webMaster><?php echo SERVER_EMAIL?></webMaster>
<?php
$lastbuild_database 
= new database();
$lastbuild_query "SELECT * FROM ".TABLE_PREFIX."pages WHERE visibility='public' ORDER BY modified_when DESC LIMIT 1";
$lastbuild_result $lastbuild_database->query($lastbuild_query);
$lastbuild $lastbuild_result->fetchRow($lastbuild_result);
$timestamp $lastbuild["modified_when"];
?>

    <lastBuildDate><?php echo date("r",$timestamp); ?></lastBuildDate>
<?php
$database 
= new database();
$query "SELECT * FROM ".TABLE_PREFIX."pages WHERE visibility='public' ORDER BY modified_when DESC LIMIT ".$number;
$result $database->query($query);
while(
$item $result->fetchRow($result)){
$author_database = new database();
$user $item["modified_by"];
$author_query "SELECT * FROM ".TABLE_PREFIX."users WHERE user_id=".$user;
$author_result $author_database->query($author_query);
$author $author_result->fetchRow($author_database);
?>

   
    <item>
      <title><?php echo stripslashes($item["page_title"]); ?></title>
      <description><?php echo stripslashes($item["description"]); ?></description>
      <link><?php echo WB_URL."/pages".$item["link"].PAGE_EXTENSION?></link>
      <author><?php echo ($author["username"]." &lt;".$author["email"]."&gt;"); ?></author>
    </item>
<?php ?>
   
  </channel>
 
</rss>

Funktioniert jetzt mit allen "normalen" Seiten und zeigt jeweils die 30 Seiten mit den letzten Änderungen an (sicher nicht die beste Lösung, aber bin noch nicht so fit in PHP/mySQL). Vielleicht hat noch jemand Lust das als Modul ö. Ä. zu integrieren.
Hoffe hilfreich auch für andere.
Logged
tonicwater

Offline Offline

Posts: 9



« Reply #12 on: March 13, 2007, 01:41:57 PM »

Hi Kralle,
finde Deinen Ansatz aufjedenfall gut, denn ich habe schon ewig danach gesucht auch 'normale' pages als rss feed anbieten zu können.  tongue


Mein Beitrag:

rss.php (wie bereits beschrieben im WB root ablegen z.B.: www.adresse.de/wb/rss.php)
Code:
<?php
require_once('config.php');
require_once(
WB_PATH.'/framework/class.frontend.php');
header("Content-type: text/xml; charset=utf-8" );
echo(
stripslashes('\<\?xml version=\"1.0\" encoding=\"utf-8\"\?\>'));
$number_articles 30;
$number_text 250;
?>

<rss version="2.0">
  <channel>
    <title><?php echo WEBSITE_TITLE?> - RSS Feed</title>
    <link><?php echo WB_URL?></link>
    <description><?php echo WEBSITE_DESCRIPTION?></description>
    <category><?php echo WEBSITE_TITLE?></category>
    <language><?php echo DEFAULT_LANGUAGE?></language>
    <managingEditor><?php echo SERVER_EMAIL?></managingEditor>
    <webMaster><?php echo SERVER_EMAIL?></webMaster>
<?php
$database = new database();
$query "SELECT * FROM ".TABLE_PREFIX."pages WHERE visibility='public' ORDER BY modified_when DESC LIMIT ".$number_articles;
$result $database->query($query);
while($item $result->fetchRow($result)){
$author_database = new database();
$user $item["modified_by"];
$author_query "SELECT * FROM ".TABLE_PREFIX."users WHERE user_id=".$user;
$author_result $author_database->query($author_query);
$author $author_result->fetchRow($author_database);
$content_page $item["page_id"];
$build_database = new database();
$build_query "SELECT * FROM ".TABLE_PREFIX."pages WHERE page_id=".$content_page;
$build_result $build_database->query($build_query);
$build $build_result->fetchRow($build_database);
$when $build["modified_when"];
$content_database = new database();
$content_query "SELECT * FROM ".TABLE_PREFIX."mod_wysiwyg WHERE page_id=".$content_page;
$content_result $content_database->query($content_query);
$content $content_result->fetchRow($content_database);
$content_text substr($content["text"],0,$number_text);
?>

    <item>
      <title><?php echo stripslashes($item["page_title"]); ?></title>
      <description><?php echo htmlentities($content_text); ?>  ...</description>
      <link><?php echo WB_URL."/pages".$item["link"].PAGE_EXTENSION?></link>
      <pubDate><?php echo date("r",$when); ?></pubDate>
      <author><?php echo ($author["username"]." &lt;".$author["email"]."&gt;"); ?></author>
    </item>
<?php ?>   
  </channel> 
</rss>


Template header section
Code:
<link rel="alternate" type="application/rss+xml" title="<?php echo WEBSITE_TITLE?> - RSS Feed" href="<?php echo WB_URL."/rss.php" ?>">


Mit dieser Modifizierung wird auch der Seiteninhalt (statt der mühsam geschriebenen Seitenbeschreibung) angezeigt - gekappt nach z.B. 250 Zeichen und endend mit ' ...'
(hier suche ich noch nach einer Möglichkeit ein Wort unverletzt zu lassen, um danach zu kappen, und wie bindet man die Bilder mit ein?)
Zusätzlich wird noch das Erstellungsdatum des jeweiligen Artikels genannt.

Würde mich freuen, wenn sich jemand ebenfalls damit beschäftigt...  smiley
Wäre interessant das auszureifen und evtl. als Modul anzubieten?

nice greetz
TW
« Last Edit: March 16, 2007, 11:51:40 AM by tonicwater » Logged

No worries, mate!
Kralle

Offline Offline

Posts: 14


WWW
« Reply #13 on: March 13, 2007, 09:11:04 PM »

Ah, scheint sich ja doch noch jemand dafür zu interessieren  grin

hier suche ich noch nach einer Möglichkeit ein Wort unverletzt zu lassen, um danach zu kappen, und wie bindet man die Bilder mit ein?

Kappen geht wohl nur davor. Könnte man in etwa so lösen:

Code:
$content_text = preg_replace('/(.*)(\w+)(.*?)/s' , '\\1...', $content_text);

(ungetestet)

Bilder sind für RSS-Feeds m. W. nicht vorgesehen. Wenn du jedes Mal nur 1 oder kein Bild hast, könntest du das über das <enclosure> Tag im Feed einbinden, wird von manchen Readern dargestellt.
Logged
tonicwater

Offline Offline

Posts: 9



« Reply #14 on: March 27, 2007, 04:03:35 PM »

Hallo Leute,

es gibt was neues grin: Es werden alle Seiten bis auf die Seiten, welche das Modul Sitemap beinhalten als RSS-Feed ausgegeben + Abkürzung nach z.B. 250 Zeichen (ohne ein Wort zu zerschneiden).

Voraussetzung ist allerdings das das Modul Sitemap installiert ist!

rss.php (wie bereits beschrieben im WB root ablegen z.B.: www.adresse.de/wb/rss.php)
Code:
<?php
require_once('config.php');
require_once(
WB_PATH.'/framework/class.frontend.php');
header("Content-type: text/xml; charset=utf-8" );
echo(
stripslashes('\<\?xml version=\"1.0\" encoding=\"utf-8\"\?\>'));
$number_articles 50// Artikelanzahl
$number_text 250// Zeichenanzahl bevor mit ' ...' abgekuerzt wird
?>

<rss version="2.0">
  <channel>
    <title><?php echo WEBSITE_TITLE?> - RSS Feed</title>
    <link><?php echo WB_URL?></link>
    <description><?php echo WEBSITE_DESCRIPTION?></description>
    <language><?php echo DEFAULT_LANGUAGE?></language>
    <copyright>2007 <?php echo WEBSITE_TITLE?></copyright>
    <managingEditor><?php echo SERVER_EMAIL?></managingEditor>
    <webMaster><?php echo SERVER_EMAIL?></webMaster>
    <docs><?php echo WB_URL?>/rss</docs>
<?php
// string cut
function limit_text($text,$maxchar){
$split=explode(" ",$text);
$i=0;
while(TRUE){
$len=(strlen($newtext)+strlen($split[$i]));
if($len>$maxchar){
break;
}else{
$newtext=$newtext." ".$split[$i];
$i++;
}
}
return $newtext;

// exclude sitemap items (because MySQL 4.0 has no subselect a array is used)
$exclude_database = new database();
$exclude_query "SELECT * FROM ".TABLE_PREFIX."mod_sitemap ORDER BY page_id";
$exclude_result $exclude_database->query($exclude_query);
while($exclude_item $exclude_result->fetchRow($exclude_result)){
$ergebnis[] = array($exclude_item["page_id"]);
    }
foreach ($ergebnis as $key_1 => $value_1) {
$a.= $k1;
foreach ($value_1 as $key_2 => $value_2) {
$b.= "(page_id != ".$value_2.") AND ";
       }
    }
$exclude_string $a.$b;
//$exclude_string = substr($exclude_string,0,-4); // activate if (visibility != 'none') not used
$database = new database();
$query "SELECT * FROM ".TABLE_PREFIX."pages WHERE ".$exclude_string." visibility='public' ORDER BY modified_when DESC LIMIT ".$number_articles;
//echo $query;
$result $database->query($query);
while($item $result->fetchRow($result)){

$author_database = new database();
$user $item["modified_by"];
$author_query "SELECT * FROM ".TABLE_PREFIX."users WHERE user_id=".$user;
$author_result $author_database->query($author_query);
$author $author_result->fetchRow($author_database);

$build_database = new database();
$content_page $item["page_id"];
$build_query "SELECT * FROM ".TABLE_PREFIX."pages WHERE page_id=".$content_page;
$build_result $build_database->query($build_query);
$build $build_result->fetchRow($build_database);
$when $build["modified_when"];

$content_database = new database();
$content_query "SELECT * FROM ".TABLE_PREFIX."mod_wysiwyg WHERE page_id=".$content_page;
$content_result $content_database->query($content_query);
$content $content_result->fetchRow($content_database);
$content_text limit_text($content["text"], $number_text);
?>

    <item>
    <title><?php echo stripslashes($item["page_title"]); ?></title>
    <description><?php echo htmlentities($content_text); ?>  ...</description>
    <link><?php echo WB_URL."/pages".$item["link"].PAGE_EXTENSION?></link>
    <pubDate><?php echo date("r",$when); ?></pubDate>
    <author><?php echo ($author["username"]." &lt;".$author["email"]."&gt;"); ?></author>
    </item><?php ?>   
  </channel> 
</rss>


Nice greetz!

TW

P.S. Ich musste ein Array verwenden, da ich MySQL 4.0 verwende und nicht mit 'NOT IN' und LEFT JOIN' Funktionen zurecht kam. Für Verbesserungen/Optimierungen bin ich offen!  smiley
« Last Edit: March 29, 2007, 09:04:35 AM by tonicwater » Logged

No worries, mate!
mrieglhofer

Offline Offline

Posts: 33


« Reply #15 on: June 09, 2007, 10:04:34 PM »

Quote
sorry, gany vergessen, da gibt es ein paar kleine Dinge, die mit Umlauten zu tuen haben. Versuch mal Deine RSS(.)php durch diese hier zu ersetzen ... die hat rsmith mir mal gemacht.
Die .txt Dateierweiterung bitte entfernen.
Gruß
Klaus
--------------------------------------------------------------------------------
 rss.php.txt (3.36 KB - downloaded 8 times.)
 

Danke dafür. Das hat mein Problem gelöst, dass die RSS Feeds immer fehlerhaft wurden, wenn ein Umlaut im Text verwendet wurde. Ich verstehe nur nicht, warum dieses Script nicht in die 2.6.5. Release eingeflossen ist, da diese ja jünger ist und der Fehler immer noch vorhanden ist.

Markus
Logged
kweitzel
Forum administrator
*****
Offline Offline

Posts: 6977


WWW
« Reply #16 on: June 09, 2007, 10:30:36 PM »

Das Ticket dazu existiert, aber scheint wegen "zuspammen" desselben ignoriert zu werden ...

Gruß

Klaus
Logged

WebsiteBaker Org e.V. - for WebsiteBaker

mrieglhofer

Offline Offline

Posts: 33


« Reply #17 on: June 09, 2007, 10:52:01 PM »

Na ja, aber das Script, das da zum Austausch da ist, funktioniert ja. Also wäre eigentlich nur das Testen. Aber was solls. Mir reicht das mal so.

Markus
Logged
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #18 on: June 10, 2007, 12:25:52 PM »

Hallo,

die gefixte rss.php ist seit langem bereits im advanced news modul enthalten und wird ab WB 2.6.6 auch im standard modul enthalten sein.

Matthias
Logged
mrieglhofer

Offline Offline

Posts: 33


« Reply #19 on: June 10, 2007, 01:15:18 PM »

Danke.

Wenn ich jetzt das neue Newsmodul installiere, habe ich doch lt. Beschreibung Probleme mit dem nächsten Update bzw. komme ich nicht mehr auf die Normalversion zurück. Das möchte ich als Anfänger eigentlich vermeiden.

Die RSS.php aus dem Forum von rsmith löst die Umlaute in den Texten, aber nicht im Title. Ist das im gefixten Rss.php gelöst? Gibt es für die 2.6.6 schon einen groben Zeitpunkt? Wenn das in absehbarer Zeit gelöst ist, spare ich mir die Experimente, da ich eh erst im September in Produktivbetrieb gehen werde.

markus
Logged
mrieglhofer

Offline Offline

Posts: 33


« Reply #20 on: June 10, 2007, 01:17:42 PM »

Noch als Ergänzung:

Wenn auf einer News Seite die Seitenbeschreibung leer gelassen wird, wird die der Site übernommen. Wenn dort ein Sonderzeichen ist, bricht der RSS Feed ab.

Daher muss bei News Seiten derzeit sicherheitshalber eine passende Beschreibung eingegeben.werden.

markus
Logged
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #21 on: June 10, 2007, 02:01:46 PM »

Hallo,

das advanced modul kannst du bedenkenlos einsetzen. Halte dich aber an die Inastallationsbesch reibung. Bei einem Update auf eine neuere Version von WB, musst du dann lediglich darauf achten dne news ordner aus dem update paket zu löschen. Das ist alles. Alle Änderungen (fixes) im news modul werden meistens zuerst im advanced modul gemacht, bevor sie dann in den cor versionen von Wb nachgezogen werden. Du bit mit dem advanced modul also immer auf der aktuelleren Seite.

Zwecks den Umlauten noch ein paar Anmerkungen. Hier spielen in WB 2.6.5 viele Komonenten eine wichtig Rolle.  1. Kriterium ist der eingestellte WB charset und 2. Kriterium der verwendete WYSIWYG Editor. Mit UTF8 und HTMLArea vermute ich mal wirds nie funktioneren, mit ISO-8859-1 und dem aktuellen FCKEditor dürfte es jetzt (in WB 2.6.5) auch schon gehen. In WB 2.6.6 sollte es dann aber mit allen charsets und editoren ohne Probleme funktionieren.

Matthias
Logged
mrieglhofer

Offline Offline

Posts: 33


« Reply #22 on: June 11, 2007, 07:55:17 PM »

Hallo Matthias

Danke für Hilfe. Nimmt mir etwas die Angst;-))

Aber noch mal zurück zu meinen Erfahrungen, da ich ja auch den neuen Code (allerdings nur den Teil der RSS.php schon probiert habe.

Die RSS.php im neuen Advanced Modul entspricht an den kritischen Stellen jenem, das hier im Forum von kweitzel reingestellt wurde. Beide mit dem CDATA[....
Ob die neuen Klassen hier eine Änderung bewirken, kann ich erst am WE ausprobieren. Bin da eher ein PHP Laie.

Beispiel: händisch in der DB Tab newspost geändert; generell UTF-8; am Webserver mit .htaccess erzwungen. Das RSS.php von rsmith.

mit ü in der Datenbank:
->RSS Feed IE7:  Im Textinhalt wurde ein ungültiges Zeichen gefunden. Fehler beim Bearbeiten der Ressource 'http://cms.pfarrepiusx.info/modu...
<title><![CDATA[Fotos Fronleichnam online verf

ergibt mit Firefox: Fotos Fronleichnam online verf�gbar
Die Tableaus der Fotos von Fronleichnam sind im Internet verfügbar

mit &uuml;
FRSS-Feed:  title>
- <![CDATA[ Fotos Fronleichnam online verf&uuml;gbar
  ]]>
ergibt mit Firefox: Fotos Fronleichnam online verf&uuml;gbar
Die Tableaus der Fotos von Fronleichnam sind im Internet verfügbar.

Was ich nicht verstehe ist, dass beide gleichen Aufrufe unterschiedliche Ergebnisse haben. Die schicken ja nur den DB Inhalt. Im Shorttext wird ü immer korrekt dargestellt. UTF-8 sollte ja lt. Script passen.

// Sending XML header
header("Content-type: text/xml; charset=utf-8" );

Die beiden Aufrufe sind identisch. Und wenn ich in der DB ü oder &uuml; eingebe, sollte zumindest eine Lösung das gleiche erreichen wie im Shorttext/Description.Immerhin kommen ja beide aus der gleichen Tabelle, sodass da ja Codierungsprobleme ausscheiden sollten.

<title><![CDATA[<?php echo stripslashes($item["title"]); ?>]]></title>
<description><![CDATA[<?php echo stripslashes($item["content_short"]); ?>]]></description>

Verstehen tue ich das nicht. Aber nächste Wo werde ich halt mal das neue Modul probiern. Nur allzuviel Hoffnung habe ich nicht.

Markus
Logged
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #23 on: June 11, 2007, 10:26:08 PM »

Hallo,

kleiner Tip noch am Rande, nicht alles was es hier im Forum gibt muss auch funktionieren. Grundsätzlich solltest du erstmal die offiziellen Sachen probieren. Also Standard WB 2.6.5 und advanced modul, aber bei WB 2.6.5 bitte mit charset ISO-8859-1 weil wie gesagt UTF8 in WB 2.6.5 nicht richtig läuft. Oder 2.6.6 (egal ob mit standard oder advanced und egal welches charset). Einzige Hürde bei 2.6.6 können hier noch die hoster sein, wenn du UTF8 einsetzt und der Server (vom Hoster) auf ISO-8859-1 läuft. Das kann man aber mit .htaccess und php_value bei manchen hostern überschreiben.

Und last but not least merkst du ja selbst, dass ohne Änderungen an der Datenbank oder dem script von WB die Browser unterschiedliche Ergebnisse bringen. Könnte also auch sein dass hier deine Browsereinstellunge n nicht passen.

Matthias
Logged
mrieglhofer

Offline Offline

Posts: 33


« Reply #24 on: June 12, 2007, 09:41:10 AM »

Hallo Matthias

Jetzt habe ich noch die Servereinstellungen durchgeschaut und dort war default_Characterse t leer. Jetzt habe ich dort UTF-8 reingegeben und siehe da, da ging das Ding.

Allerdings zu früh gefreut, jetzt haben die Dinge mit den Sonderzeichen in den Menüs begonnen. Also alles auf ISO-8859-1 gesetzt (WB und PHP). Damit ist das behoben, aber na ja, jetzt geht halt der Newsreader nicht mehr. Aber das schaue ich mir abends an.

Im Advanced News Modul sendet der Header allerdings auch UTF-8 fix codiert. Vielleicht liegt es daran. Das ist ja leicht zum ausprobieren.

Markus
« Last Edit: June 12, 2007, 10:55:45 AM by mrieglhofer » Logged
Pages: [1] 2   Go Up
Print
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!