Flux RSS : Le chargement a échoué
Bonjour
Pour vous exposer mon problème, j'ai créé une application qui génère et lit un flux rss, avec ses articles qui sont enregistrés dans une base de données, alors ça lit et génère très bien mon flux rss, mais quand je clique dans les marques-pages sur ce flux auquel je me suis abonnée, pour pouvoir être au courant des dernières news, ça met "Le chargement a échoué." à la place des articles qui devraient y être, et mis à jour automatiquement...
Mon code de mon flux xml dans feed.php que voici :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
<?php
require_once('connect.php');
$link = new Connexion('mabase');
$getFeed = $link->query("SELECT rss_post_id, rss_post_date, rss_post_titre,
rss_post_lien, rss_post_description, rss_post_pers_id, rss_post_rss_categ_id
FROM rss_post
ORDER BY rss_post_date DESC
LIMIT 10;");
?>
<channel>
<title>Les dossiers référencement de WebRankInfo</title>
<atom:link href="http://www.webrankinfo.com/dossiers/feed" rel="self" type="application/rss+xml" />
<link></link>
<description><?php echo '<h1>Nouveautés</h1>'; ?></description>
<pubDate><?php echo date('Y-m-d H:i:s'); ?></pubDate>
<lastBuildDate><?php echo gmdate('Y-m-d H:i:s'); ?></lastBuildDate>
<language></language>
<sy:updatePeriod></sy:updatePeriod>
<sy:updateFrequency></sy:updateFrequency>
<generator></generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/>
<atom:link rel="hub" href="http://superfeedr.com/hubbub"/>
<?php
$lien = 'http://lien/jusqua/mon/article.php';
while($rssFeed = $link->fetch_array($getFeed))
{
$id = $rssFeed['rss_post_id'];
$titre = $rssFeed['rss_post_titre'];
$description = $rssFeed['rss_post_description'];
$date = $rssFeed['rss_post_date'];
// requete qui recupere nom et prenom de lauteur
$getPers = $link->query("SELECT pers_nom, pers_prenom
FROM personne
WHERE pers_id = ".$rssFeed['rss_post_pers_id'].";");
$rssPers = $link->fetch_array($getPers);
$nom = $rssPers['pers_nom'];
$prenom = $rssPers['pers_prenom'];
?>
<item>
<title></title>
<description></description>
<link></link>
<pubDate></pubDate>
<dc:creator></dc:creator>
<content:encoded>
<h2><?php echo $titre; ?></h2>
<p><?php echo $description; ?></p>
<p>Lisez la suite de cet article <a href="<?php echo $lien; ?>?rssId=<?php echo $id; ?>" target=_BLANK><?php echo $titre; ?></a></p>
<p><small><?php echo $nom.' '.$prenom; ?><a href="<?php echo $lien; ?>?rssId=<?php echo $id; ?>" target=_BLANK><?php echo ', '.$titre; ?></a>, <?php echo $date; ?>
</small></p>
<hr />
</content:encoded>
</item>
<?php
}
?>
</channel>
</rss> |
ce code est appelé dans mon index.php:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="../_JS/index.js"></script>
<link rel="stylesheet" type="text/css" media="screen" href="../_CSS/index.css" />
<link rel="alternate" type="application/rss+xml" href="http://192.168.2.147/bimRss/_PHP/feed.php" />
<title>BimRSS : Flux RSS Bimedia</title>
</head>
<body>
<?php
// Div où seront affichés les articles grâce à un flux rss.
echo '<div id="main"></div>';
?>
</body>
</html> |
Et ce grâce à index.js (au chargement de la page index.php) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
window.onload = function()
{
// on appelle la fonction qui affiche le contenu
flux_rss();
}
function nav_AJAX()
{
var xhr;
if(window.XMLHttpRequest)
{ // Mozilla, Safari, ...
xhr = new XMLHttpRequest();
}
else if(window.ActiveXObject)
{ // Internet Explorer
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
return xhr;
}
function flux_rss()
{
var xml = '';
// Requête AJAX
var xhr = nav_AJAX();
xhr.open("POST", "../_PHP/feed.php", true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=utf-8');
xhr.send();
xhr.onreadystatechange = function(){
if(xhr.readyState == 4)
{
if(xhr.status == 200)
{
var reponse2 = xhr.responseText;
if(reponse2 != '')
{
// c'est ici que je place mon flux et donc ses articles
document.getElementById('main').innerHTML += reponse2;
}
}
}
}
} |
Autres infos : pour lire le flux j'utilises magpierss version 0.72
Pour résumer, bien que ça ne soit pas simple à expliquer, la question est :
Pourquoi le chargement des articles du flux ne fonctionne pas et renvoie "Le chargement a échoué" dans le marque-page du flux abonné ?
Cordialement
Ginger