RSS -lukija ongelma?

MODien asennus ja omat muokkaukset.
jpekkam
Hyvässä vauhdissa
Hyvässä vauhdissa
Viestit: 10
Liittynyt: 07 Tammi 2006, 11:11
Viesti:

RSS -lukija ongelma?

Viesti Kirjoittaja jpekkam »

Eli ei toimi millään tuo RSS Feed modi?
http://www.phpbb.com/phpBB/viewtopic.php?t=254606

Virhe ilmoituksesta en oikeen saa mitään vihjettä?
Oisko jollain ollut samanlaista propleemaa?

http://www.jpekkam.com/keskustelu/phpBB2/rss.php
Merri
MODaaja
MODaaja
Viestit: 155
Liittynyt: 21 Huhti 2006, 23:32
Paikkakunta: Riihimäki
Viesti:

Viesti Kirjoittaja Merri »

Kokeile etsiä RSS-templaateista tuo <description>-kohta ja lisää aloitustagin jälkeen <![CDATA[ ja ennen lopetustagia ]]>

Tämä estää XML-parsereita lukemasta sen sisältöä, mutta toivottavasti RSS-lukijat tajuavat mistä on kyse. En tosin ole varma tästä kun en pahemmin leiki puhtaan XML:n kanssa.
jpekkam
Hyvässä vauhdissa
Hyvässä vauhdissa
Viestit: 10
Liittynyt: 07 Tammi 2006, 11:11
Viesti:

Viesti Kirjoittaja jpekkam »

Meinasitko näin:

<description><![CDATA[{BOARD_DESCRIPTION}]]></description>

Ei ainakaan nuin toimi...

Tulee virheilmoitus:

XML-jäsennysvirhe: yhteensopimaton tunnus. Odotettu tunnus: </link>.
URL: http://www.jpekkam.com/keskustelu/phpBB2/rss.php
Rivinumero 23, sarake 3:
</image>
--^
jpekkam
Hyvässä vauhdissa
Hyvässä vauhdissa
Viestit: 10
Liittynyt: 07 Tammi 2006, 11:11
Viesti:

Viesti Kirjoittaja jpekkam »

Tuossa vielä tuo rss_body.tpl tiedosto alkuperäisenä, muista tiedostoista en löytänyt <description> -tagia...

Koodi: Valitse kaikki

<?xml version="1.0" encoding="{S_CONTENT_ENCODING}" ?>
<!-- BEGIN switch_enable_xslt -->
<?xml-stylesheet type="text/xsl" href="templates/rss.xsl"?> 
<!-- END switch_enable_xslt -->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:annotate="http://purl.org/rss/1.0/modules/annotate/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<!--
	This feed generated for {READER}
	More info at http://naklon.info/rss/about.htm
-->
<channel>
<title>{BOARD_TITLE}</title>
<link>{BOARD_URL}
<description>{BOARD_DESCRIPTION}</description> 
<managingEditor>{BOARD_MANAGING_EDITOR}</managingEditor>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<generator>{PROGRAM}</generator>{LANGUAGE}
<lastBuildDate>{BUILD_DATE}</lastBuildDate>
<image>
	<url>{BOARD_URL}templates/subSilver/images/logo_phpBB_med.gif</url>
	<title>{BOARD_TITLE}</title>
	<link>{BOARD_URL}
	<width>122</width>
	<height>56</height>
</image>
<!-- BEGIN post_item -->
<item>
<title>{post_item.FORUM_NAME} :: {post_item.TOPIC_TITLE}</title>
<link>{post_item.POST_URL}
<pubDate>{post_item.UTF_TIME}</pubDate>
<guid isPermaLink="true">{post_item.POST_URL}</guid>
<description>{L_AUTHOR}: {post_item.AUTHOR}<br />
{post_item.POST_SUBJECT}
{L_POSTED}: {post_item.POST_TIME}<br />
<br /><span class="postbody">
{post_item.POST_TEXT}{post_item.USER_SIG}</span><br />
</description>
<dc:creator>{post_item.AUTHOR0}</dc:creator>
<dc:subject>{post_item.FORUM_NAME}</dc:subject>
<annotate:reference rdf:resource="{post_item.FIRST_POST_URL}" />
<comments>{post_item.REPLY_URL}</comments>
</item>
<!-- END post_item -->
</channel>
</rss>
Merri
MODaaja
MODaaja
Viestit: 155
Liittynyt: 21 Huhti 2006, 23:32
Paikkakunta: Riihimäki
Viesti:

Viesti Kirjoittaja Merri »

Mietin tuota nyt hieman enemmän. Ongelma johtuu siitä, että XML:ssä on vain muutama sallittu &...;-merkki, joten esim. &auml; (joka vastaa kirjainta ä) ei ole sallittu, vaikka se käypää HTML:ää onkin. Jotta ä-kirjaimen saisi toimimaan oikein, täytyisi merkit muuttaa UTF-8:ksi. Joten kokeillaan vaikka nyt ensin ennen htmlspecialcharsin käyttöä PHP-tiedostossa pakata teksti UTF-8:ksi.

Eli avaa rss.php ja etsi:

Koodi: Valitse kaikki

		if ( $post_subject != '' )
		{
			$post_subject = htmlspecialchars($lang['Subject'].': '.$post_subject.'<br />');
		}
Korvaa tällä:

Koodi: Valitse kaikki

		if ( $post_subject != '' )
		{
			$post_subject = htmlspecialchars(utf8encode($lang['Subject'].': '.$post_subject.'<br />'));
		}
Etsi:

Koodi: Valitse kaikki

		$template->assign_block_vars('post_item', array(
			'POST_URL' => $viewpost_url . '?' . POST_POST_URL . '=' . $post['post_id'] . '#' . $post['post_id'],
			'FIRST_POST_URL' => $viewpost_url . '?' . POST_POST_URL . '=' . $post['topic_first_post_id'] . '#' . $post['topic_first_post_id'],
			'REPLY_URL'=>$replypost_url."&".POST_POST_URL."=".$post['post_id'],
			'TOPIC_TITLE' =>htmlspecialchars(undo_htmlspecialchars($topic_title)),
			'AUTHOR0' => htmlspecialchars($author0),
			'AUTHOR' => htmlspecialchars($author),
			'POST_TIME' => create_date($board_config['default_dateformat'], $post['post_time'], $board_config['board_timezone']).' (GMT ' . $board_config['board_timezone'] . ')',
			'ATOM_TIME'=>gmdate("Y-m-d\TH:i:s", $post['post_time'])."Z",
			'ATOM_TIME_M'=>($post['post_edit_time']<>"" ? gmdate("Y-m-d\TH:i:s", $post['post_edit_time'])."Z": gmdate("Y-m-d\TH:i:s", $post['post_time'])."Z"),
			'POST_SUBJECT' => $post_subject,
			'FORUM_NAME' => htmlspecialchars($post['forum_name']),
			'UTF_TIME'=>RSSTimeFormat($post['post_time'],$userdata['user_timezone']),
			'POST_TEXT' => htmlspecialchars(preg_replace('|[\x00-\x08\x0B\x0C\x0E-\x1f]|','',$message)),
			'USER_SIG' => htmlspecialchars($user_sig),
			'TOPIC_REPLIES' => $post['topic_replies']
			)
		);

Korvaa tällä:

Koodi: Valitse kaikki

		$template->assign_block_vars('post_item', array(
			'POST_URL' => $viewpost_url . '?' . POST_POST_URL . '=' . $post['post_id'] . '#' . $post['post_id'],
			'FIRST_POST_URL' => $viewpost_url . '?' . POST_POST_URL . '=' . $post['topic_first_post_id'] . '#' . $post['topic_first_post_id'],
			'REPLY_URL'=>$replypost_url."&".POST_POST_URL."=".$post['post_id'],
			'TOPIC_TITLE' =>htmlspecialchars(utf8encode(undo_htmlspecialchars($topic_title))),
			'AUTHOR0' => htmlspecialchars(utf8encode($author0)),
			'AUTHOR' => htmlspecialchars(utf8encode($author)),
			'POST_TIME' => create_date($board_config['default_dateformat'], $post['post_time'], $board_config['board_timezone']).' (GMT ' . $board_config['board_timezone'] . ')',
			'ATOM_TIME'=>gmdate("Y-m-d\TH:i:s", $post['post_time'])."Z",
			'ATOM_TIME_M'=>($post['post_edit_time']<>"" ? gmdate("Y-m-d\TH:i:s", $post['post_edit_time'])."Z": gmdate("Y-m-d\TH:i:s", $post['post_time'])."Z"),
			'POST_SUBJECT' => $post_subject,
			'FORUM_NAME' => htmlspecialchars(utf8encode($post['forum_name'])),
			'UTF_TIME'=>RSSTimeFormat($post['post_time'],$userdata['user_timezone']),
			'POST_TEXT' => htmlspecialchars(utf8encode(preg_replace('|[\x00-\x08\x0B\x0C\x0E-\x1f]|','',$message))),
			'USER_SIG' => htmlspecialchars(utf8encode($user_sig)),
			'TOPIC_REPLIES' => $post['topic_replies']
			)
		);
Sitten toivotaan että tuo riittää ja ettei tarvitse ihmetellä sen enempää.


CDATA-jutun voinee unohtaa, se oli vain ensimmäinen asia joka tuli mieleen, eikä todennäköisesti auta tässä tapauksessa.
jpekkam
Hyvässä vauhdissa
Hyvässä vauhdissa
Viestit: 10
Liittynyt: 07 Tammi 2006, 11:11
Viesti:

Viesti Kirjoittaja jpekkam »

Nyt tulee virhe:

Koodi: Valitse kaikki

Fatal error: Call to undefined function: utf8encode() in /home/int2000/21086/html/keskustelu/phpBB2/rss.php on line 472

Ja tuo rivi on...

Koodi: Valitse kaikki

'TOPIC_TITLE' =>htmlspecialchars(utf8encode(undo_htmlspecialchars($topic_title))),
Merri
MODaaja
MODaaja
Viestit: 155
Liittynyt: 21 Huhti 2006, 23:32
Paikkakunta: Riihimäki
Viesti:

Viesti Kirjoittaja Merri »

Hitsi, se olikin utf8_encode. Eli kaikki utf8encodet pitää korjata sisältämään alaviivan. Pahuksen netti toimii tällä hetkellä todella surkeasti, en päässyt php.netistä lunttaamaan joten yritin luottaa ulkomuistiin. Ja väärin tietysti meni.
jpekkam
Hyvässä vauhdissa
Hyvässä vauhdissa
Viestit: 10
Liittynyt: 07 Tammi 2006, 11:11
Viesti:

Viesti Kirjoittaja jpekkam »

ei ei... :(
Mikä ihime tuosa nyt on... Muistelen, että joskus aikonaan kun kokeilin tuota niin se toimi...
Merri
MODaaja
MODaaja
Viestit: 155
Liittynyt: 21 Huhti 2006, 23:32
Paikkakunta: Riihimäki
Viesti:

Viesti Kirjoittaja Merri »

Heeetkinen! Vika on suomen kielitiedostossa: siinä on jostain syystä käytetty noita &auml;eja ynnä muita. Eli avaa nuo kielitiedostot ja vedä korvaa kaikki näille:

&auml; -> ä
&ouml; -> ö
&Auml; -> Ä
&Ouml; -> Ö

Muista merkata, että kirjainkoolla on väliä ennen kuin korvaat.


Joskus muistaakseni nuo kielitiedostot ovat kyllä olleet ihan ilman &auml;eja sun muita, siksi varmaan tuo RSS-feedikin on silloin toiminut.
jpekkam
Hyvässä vauhdissa
Hyvässä vauhdissa
Viestit: 10
Liittynyt: 07 Tammi 2006, 11:11
Viesti:

Viesti Kirjoittaja jpekkam »

KIIIIIIIIIIITOS! :D
Se toimi.

Korvasin nuo merkit tuohon lang_main.php tiedostoon, niin heti rupes toimiin.


:) :) :)
Esashi
Aktiivinen jäsen
Aktiivinen jäsen
Viestit: 376
Liittynyt: 19 Tammi 2006, 10:22
Viesti:

Viesti Kirjoittaja Esashi »

jpekkam kirjoitti:KIIIIIIIIIIITOS! :D
Se toimi.

Korvasin nuo merkit tuohon lang_main.php tiedostoon, niin heti rupes toimiin.


:) :) :)
Mukava lukea että tulee ongelmai ratkottua tämän foorumin kautta. Keep up good work users! :)
Esashi

Maan Äiti, anna minulle
ymmärrystä heidän suhteen, jotka eivät ymmärrä minua,
kärsivällisyyttä heitä kohtaan, jotka eivät pidä minusta,
viisautta, osatakseni kätkeä heidän ruumiit,
jotka ovat käyneet hermoilleni
drw
MODaaja
MODaaja
Viestit: 86
Liittynyt: 07 Loka 2006, 12:32

Viesti Kirjoittaja drw »

Esashi kirjoitti:
jpekkam kirjoitti:KIIIIIIIIIIITOS! :D
Se toimi.


Mukava lukea että tulee ongelmai ratkottua tämän foorumin kautta. Keep up good work users! :)
Itse painin saman ongelman kanssa. Kehtaako joku laittaa valmiiksi muokatut tiedostot saataville..?

---

http://www.tunkio.tk
Lukittu

Paikallaolijat

Käyttäjiä lukemassa tätä aluetta: Ei rekisteröityneitä käyttäjiä ja 11 vierailijaa