Flux rss et bbcode: problème

Flux rss et bbcode: problème - PHP - Programmation

Marsh Posté le 02-02-2008 à 16:06:57    

Bonjour.
 
Mon flux rss ne prend pas en charge le bbcode inclu dans mes titres.
 
Peut on remédier au problème ?
 
Actuellement j'ai ca:
 

Code :
  1. error_reporting(E_ALL);
  2.     //flux RSS   
  3.     header('Content-Type: text/xml; charset=iso-8859-1');
  4. include("yu.php" );
  5. $rs = mysql_query('SELECT * ') or die(mysql_error());
  6.    
  7.     echo '<?xml version="1.0" encoding="iso-8859-1" ?>';
  8.     echo '<rss version="2.0">';
  9.     echo '<channel>';
  10.     echo '<title>Meteo-world</title>';
  11.     echo '<link>http://www.meteo-world.com</link>';
  12.     echo '<description>L\'actualite meteo en continu sur Internet</description>';
  13.     echo '<language>fr</language>';
  14.    
  15.     while($rss = mysql_fetch_array($rs))
  16.     {
  17.         echo '<item>';
  18.         echo '<title>'.stripslashes(html_entity_decode($rss['titre'])).'</title>';
  19.         echo '<link>http://www.meteo-world.com/news/index-'.$rss['id'].'.php</link>';
  20.         $date = explode(" ", $rss['date1']); //division date et heure
  21.         $heure = explode(":", $date[1]); //division des éléments de l'heure
  22.         $date = explode("-", $date[0]); //division des éléments de la date
  23.         $timestamp = mktime($heure[0], $heure[1], $heure[2], $date[1], $date[2], $date[0]);
  24.         // là, on a un timestamp
  25.         $date_rss = date("r",$timestamp); 
  26.     echo '<pubDate>'.$date_rss.'</pubDate>n';
  27.         echo '</item>';
  28.     }
  29.     echo '</channel>';
  30.     echo '</rss>';


 
 
et donc si je met du bbcode dans les titres, ca ecrit ca dans le flux:
 

Code :
  1. [color=orange]mon titre[/color]

Reply

Marsh Posté le 02-02-2008 à 16:06:57   

Reply

Marsh Posté le 02-02-2008 à 16:44:56    

je vois pas ou est le prblème
a aucun moment , tu ne transforme ce bbcode en html


---------------

Reply

Marsh Posté le 02-02-2008 à 17:25:57    

Dans mes pages php j'utilise les regex, genre:
 
 $data['titre'] = preg_replace('!\[color=(red|green|blue|yellow|purple|olive|orange)\](.+)\[/color\]!isU', '<span style="color:$1">$2</span>',$data['titre']);
 
 
ce qui permet de ne pas afficher les balises bbcode et de les transormer afin que le texte prenne la couleur demandée.
 
Pour le flux rss j'ai essayé mais ca ne fontionne pas.  
 
Donc si quelqu'un peut m'aider a trouver une solution, ce serait sympa :)
 
 
J'ai tenté ca mais le titre contenant les balises bbcode color ne s'affiche pas, les autres oui.
Pourtant tout fonctionne sur les pages de meon site, il n'y a que pour ce flux rss que je n'y arrive pas
 

Code :
  1. $rss['titre'] = htmlentities($rss['titre']);
  2. $rss['titre'] = preg_replace('!\[color=(red|green|blue|yellow|purple|olive|orange)\](.+)\[/color\]!isU', '<span style="color:$1">$2</span>',$rss['titre']);
  3.   $rss['titre'] = str_replace('color:orange','color:#ff6501;',$rss['titre']);


Message édité par jc66 le 02-02-2008 à 18:55:44
Reply

Marsh Posté le 03-02-2008 à 16:28:57    

up

Reply

Marsh Posté le 03-02-2008 à 18:50:10    


 
ok, merci, je suis fixé comme ca  :jap:  

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed