bonjour tout le monde, voila je tente de créer mon flux rss par rapport au 10 dernières news de mon site (qui sont dans une base de données).

Voici le script :

<?php
$cnx = mysql_connect('localhost','root',');
$db = mysql_select_db('test',$cnx);

$fp = fopen('../rss.xml','w');
$add = '<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
   
        <title>..:: Ash\'s Blog ::..</title>
        <link>http://romain.bertolucci.free.fr/site/</link>
        <description>Le blog de Ash, des articles sur WoW, WaR, developpement web, hf [smile]</description>
		<language>fr</language>
';
fputs($fp, $add);
fclose($fp);

$sql = "SELECT * FROM blog_news ORDER BY id_news DESC LIMIT 0,10";
$req = mysql_query($sql) or die("Erreur RSS");

while($data = mysql_fetch_array($req))
{
	$id = $data['id_news'];
	$date = $data['date_news'];
	$titre = $data['tire_news'];
	$accroche = $data['accroche_news'];
	$texte = $data['texte_news'];
	
	$fp = fopen('../rss.xml','a');
	$add = '<item>
            <title>'.$titre.'</title>
            <description>'.$accroche.'</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id='.$id.'</link>
            <date>'.$date.'</date>
        </item>
	';
	fputs($fp, $add);
	fclose($fp);
}

$fp = fopen('../rss.xml','a');
$add = '</channel>
</rss>';
fputs($fp, $add);
fclose($fp);

echo '<SCRIPT LANGUAGE="JavaScript">document.location.href="index.php"</SCRIPT>';
?>



Mais le soucis que je rencontre, quand je m'abonne au flux avec Firefox, le lien se crée, mais y'a rien dans la liste, il y a écrit (vide).
Avec IE il y a juste la dernière news au lieu des 10...


Si je regarde mon fichier rss.xml dedans il y a bien tout :

<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
   
        <title>..:: Ash's Blog ::..</title>
        <link>http://romain.bertolucci.free.fr/site/</link>
        <description>Le blog de Ash, des articles sur WoW, WaR, developpement web, hf [smile]</description>
		<language>fr</language>
<item>
            <title></title>
            <description>Warhammer reporté au second trimestre 2008</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=28</link>
            <date>2007-11-02 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>mis a jour du site : commentaires</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=27</link>
            <date>2007-11-02 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>WotLK : le donjon d'Utgarde</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=26</link>
            <date>2007-11-02 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>Musique electro / house</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=25</link>
            <date>2007-10-31 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>Fan site kit wotlk</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=24</link>
            <date>2007-10-31 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>deux nouveaux tutoriaux en PHP : tableau xet opérateurs</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=23</link>
            <date>2007-10-29 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>mis a jour du site et tuto</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=22</link>
            <date>2007-10-29 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>first kill Illidan en chine</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=21</link>
            <date>2007-10-29 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>quelques news</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=20</link>
            <date>2007-10-26 00:00:00</date>
        </item>
	<item>
            <title></title>
            <description>Black Temple : Illidan down !</description>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=19</link>
            <date>2007-10-17 00:00:00</date>
        </item>
	</channel>
</rss>



Je vois pas ou se trouve l'erreur, quelqu'un pourrait m'aider ?
Modifié par DevJoe (02 Nov 2007 - 14:03)
Je crois que le format des dates (entre autre) n'est pas bon, exemple correct :

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>

<title>rhinos-mac.fr : Nouveautés</title>
<link>http://www.rhinos-mac.fr</link>
<description>Les Nouveautés du Rhinos, abonnez vous !</description>

<item>
<title>Découvrir : Mise à jour de Tiger vers Léopard</title>
<link>http://www.rhinos-mac.fr/image/tutoriaux/decouvrir/24_leopard_install.mov</link>
<description>Passez à Léopard</description>

<guid isPermaLink="false">News 62</guid>
<pubDate>27 Oct 2007 13:35:00 GMT</pubDate>
</item>


Modifié par Patidou (02 Nov 2007 - 14:08)
J'ai modifié les dates mais maintenant il y a écrit "Echec du chargement." :s
Si je clique tout de même sur l'erreur, il y a écrit dans une boite d'alerte : "L'URL n'est pas valide et ne peut être chargée".

Kezako ?

le rss donne ça maintenant :

<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
   
        <title>..:: Ash's Blog ::..</title>
        <link>http://romain.bertolucci.free.fr/site/</link>
        <description>Le blog de Ash, des articles sur WoW, WaR, developpement web, hf [smile]</description>
		<language>fr</language>
<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=28</link>
            <description>Warhammer reporté au second trimestre 2008</description>
            <pubDate>02 November 2007 11:54:32 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=27</link>
            <description>mis a jour du site : commentaires</description>
            <pubDate>02 November 2007 10:32:52 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=26</link>
            <description>WotLK : le donjon d'Utgarde</description>
            <pubDate>02 November 2007 09:18:21 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=25</link>
            <description>Musique electro / house</description>
            <pubDate>31 October 2007 02:12:35 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=24</link>
            <description>Fan site kit wotlk</description>
            <pubDate>31 October 2007 11:41:52 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=23</link>
            <description>deux nouveaux tutoriaux en PHP : tableau xet opérateurs</description>
            <pubDate>29 October 2007 04:45:12 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=22</link>
            <description>mis a jour du site et tuto</description>
            <pubDate>29 October 2007 02:45:54 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=21</link>
            <description>first kill Illidan en chine</description>
            <pubDate>29 October 2007 09:15:42 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=20</link>
            <description>quelques news</description>
            <pubDate>26 October 2007 10:15:12 GMT</pubDate>
        </item>
	<item>
            <title></title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=19</link>
            <description>Black Temple : Illidan down !</description>
            <pubDate>17 October 2007 12:08:36 GMT</pubDate>
        </item>
	</channel>
</rss>

Modifié par DevJoe (02 Nov 2007 - 14:37)
*Il manque le contenu de title.

*Les noms des mois devraient être abrégé.

*Il n'y a pas de guid.

Maintenant je m'y connais pas plus que ça, entre ce qui est obligatoire ou pas... Mais je pense que le contenu de <title> l'est, vu que c'est le premier élément qui sera renseigné dans les agrégateurs.
Ah oui oula merci, j'avais même pas capté que le champ titre etait pas rempli oO je dois etre fatigué, c'etait une erreur SQL.

Sinon j'ai remi le titre, ca marche, j'ai mis un quid et aussi la date en abrégé, mais toujours pareil :s

"Echec du chargement."
et si je clique dessus quand même
"L'URL n'est pas valide et ne peut être chargée."

Désormais un item de mon fichier xml ressemble à:

<item>
            <title>Mise en place des commentaires</title>
			<link>http://romain.bertolucci.free.fr/site/?r=lire&id=27</link>
			<pubDate>02 Nov 2007 10:32:52 GMT</pubDate>
			<quid>http://romain.bertolucci.free.fr/site/?r=lire&id=27</quid>
            <description>mis a jour du site : commentaires</description>
        </item>



et j'écume les tuto du net etc mais je vois pas d'ou viens le problème Smiley ohwell



En tout cas merci de ton aide précieuse Smiley smile
C'est GUID et pas QUID. Et tu as oublié isPermalink=false Smiley cligne

Pour le reste tu envoies bien avec le header :

Content-Type: application/xml; charset=ISO-8859-1

Modifié par Patidou (02 Nov 2007 - 15:03)
en fait je crée le fichier xml avec la fonction php fopen, comme expliquez dans le script du premier post, donc non je n'utilise pas de header.

Merci pour guid Smiley langue
Modifié par DevJoe (02 Nov 2007 - 15:17)
J'ai refais le script en plus propre :

<?php
$cnx = mysql_connect('localhost','root','');
$db = mysql_select_db('rss',$cnx);

$xml = '<?xml version="1.0" encoding="iso-8859-1"?><rss version="2.0">';
$xml .= '<channel>'; 
$xml .= '<title>..:: Ash\'s Blog - RSS ::..</title>';
$xml .= '<link>http://romain.bertolucci.free.fr/site/</link>';
$xml .= '<description>Le blog de Ash, des articles sur WoW, WaR, developpement web, bonne lecture!</description>';

$sql = "SELECT *,DATE_FORMAT(date_news,'%d %b %Y %h:%i:%s') AS date FROM blog_news ORDER BY id_news DESC LIMIT 0,10";
$req = mysql_query($sql) or die("Erreur RSS");

while($data = mysql_fetch_array($req))
{
	$id = $data['id_news'];
	$date = $data['date'];
	$titre = $data['titre_news'];
	$accroche = $data['accroche_news'];
	$texte = $data['texte_news'];
	$lien = 'http://romain.bertolucci.free.fr/site/?r=lire&id='.$id;
	
	$xml .= '<item>';
	$xml .= '<title>'.$titre.'</title>';
	$xml .= '<link>'.$lien.'</link>';
	$xml .= '<pubDate>'.$date.' GMT</pubDate>';
	$xml .= '<description>'.$accroche.'</description>';
	$xml .= '</item>';
}

$xml .= '</channel>';
$xml .= '</rss>';

$fp = fopen("../rss.xml", 'w+');
fputs($fp, $xml);
fclose($fp);
mysql_close($cnx);
echo '<SCRIPT LANGUAGE="JavaScript">document.location.href="index.php"</SCRIPT>';
?>



et je crois que j'ai cerné le problème, apparement ca vient du lien du type ($lien = 'http://romain.bertolucci.free.fr/site/?r=lire&id='.$id;) car si je le remplace par un lien statique style http://romain.bertolucci.free.fr/site/ et bien plus de problème tout marche.


Le problème c'est que j'ai envie de garder un lien qui envoie le lecteur directement sur l'article.


Comment je peux faire ?


Merci encore
Ne cherchez plus j'ai trouvé !

remplacer

$lien = 'http://romain.bertolucci.free.fr/site/?r=lire&id='.$id;


par

$lien = 'http://romain.bertolucci.free.fr/site/?r=lire&amp;id='.$id;


:)