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

Green Life
WRInaute discret
WRInaute discret
 
Messages: 197
Inscription: 26 Mar 2010

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

Message le Ven Mar 26, 2010 9:53

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: Tout sélectionner
require_once('feed/simplepie.inc');
$feed = new SimplePie();
$feed->set_feed_url(http://nomdedomaine.com/fichier.php?page=backend&id_rubrique=26);
$feed->init();

Green Life
WRInaute discret
WRInaute discret
 
Messages: 197
Inscription: 26 Mar 2010

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

Message le Ven Mar 26, 2010 14:02

EUREKÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ :D :D :D :D :D :D :D :D :D :D :D :D :D :) :) :) :) :) :) :) :) :o :o :o :o :o :o :o :o :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: Tout sélectionner
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: Tout sélectionner
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-._~!$&\'()*+,;:@/?');

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


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités