Intégrer Flux Atom avec SimplePie et "=" "&" "_" "?"

WRInaute discret
Bonjour,

Auparavant, j'utilisais MagPie pour intégrer des flux RSS. Je cherche désormais à intégrer à la fois des flux RSS et ATOM.

J'ai donc installé SimplePie.

Pour ce qui est des flux RSS et ATOM sur ces modèles, il n'y a pas de problèmes , exemples :
http://nomdedomaine.com/fichier.php
http://nomdedomaine.com/fichier.php?rss
http://nomdedomaine.com/atom

Néanmoins, j'ai de gros problèmes pour intégrer des URLs du genre :
http://nomdedomaine.com/fichier.php?page=backend&id_rubrique=26
ou encore du genre http://nomdedomaine.com/fichier.php?valeur=messages_recents

Il semble que la fonction set feed url ne puisse pas intégrer ou lire les caractères "=", "&", "_", "?"

J'ai essayé avec urlencode ($tring) mais cela ne change rien.

Voici le code de simplePie :

Code:
require_once('feed/simplepie.inc');
$feed = new SimplePie();
$feed->set_feed_url(http://nomdedomaine.com/fichier.php?page=backend&id_rubrique=26);
$feed->init();
 
WRInaute discret
EUREKÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ :D :D :D :D :D :D :D :D :D :D :D :D :D :) :) :) :) :) :) :) :) :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :p :p :p :p :p :p :p :p :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen:

YA MOI AVOIR TROUVE :mrgreen: :mrgreen: :mrgreen:

Je donne ici les explications, pour aider les internautes qui voudraient utiliser SimplePie.

Dans le fichier simplepie.inc, il y a un bug. En effet, une fois arrivé à la ligne 12154, il faut ajouter un "="

Code avant :

Code:
function set_fragment($fragment)
	{
		if ($fragment === null || $fragment === '')
		{
			$this->fragment = null;
		}
		else
		{
			$this->fragment = $this->replace_invalid_with_pct_encoding($fragment, 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~!$&\'()*+,;:@/?');
		}
		$this->valid[__FUNCTION__] = true;
		return true;
	}

Code après :

Code:
function set_fragment($fragment)
	{
		if ($fragment === null || $fragment === '')
		{
			$this->fragment = null;
		}
		else
		{
			$this->fragment = $this->replace_invalid_with_pct_encoding($fragment, 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-.=_~!$&\'()*+,;=:@/?');
		}
		$this->valid[__FUNCTION__] = true;
		return true;
	}


AVANT : $this->fragment = $this->replace_invalid_with_pct_encoding($fragment, 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~!$&\'()*+,;:mad:/?');

APRES : $this->fragment = $this->replace_invalid_with_pct_encoding($fragment, 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-.=_~!$&\'()*+,;=:mad:/?');
 
Discussions similaires
Haut