MODIFICATION SCRIPT Parser RSS-à l'aide svp !
Résolu
-CCM-
Messages postés
927
Date d'inscription
Statut
Membre
Dernière intervention
-
-CCM- Messages postés 927 Date d'inscription Statut Membre Dernière intervention -
-CCM- Messages postés 927 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai récupérer un script GPL pour recuperer les infos des flux RSS.
Le script est composé de deux fichiers :
rss.php
et un code pour l'executer
J'ai plusieurs soucis....
1 Le premier c'est que pour pouvoir afficher la description de chaque article je suis obliger de forcer une boucle if : (normalement dans le else je n'ai rien, et je ne sait pourquoi a chaque fois je tombe dans l'else)
Comment eviter ce bouclage? Pourquoi la description ne s'affiche pas?
2 Mon second problème est due aux accents :
[QUOTE] données - Sécurité - sûreté /QUOTE impossible de comprendre le texte ! ma page php contenant le code d'execution est pourtant en [B]charset=iso-8859-1/B
Comment changer le type iso du resultat obtenu ??
3 Mon troisième problème c'est qu'en affichant les lien rss et la description, en bas du flux "http://rss.feedsportal.com/c/681/f/8820/index.rss" apparaissent les images "partager cet article" et "bookmark" .
Comment supprimer cette affichage d'image?
Je voudrais par la suite en arriver à un resultat comme http://www.secuser.com/actu/index.htm
Soft, sans erreur d'accent -utf-8/iso-8859-1, et avec une belle mise en forme... :roll:
Est-ce possible en PHP ??
En vous remerciant d'avance pour votre aide et vos éclaircissement !!!
J'ai récupérer un script GPL pour recuperer les infos des flux RSS.
Le script est composé de deux fichiers :
rss.php
<?php error_reporting(E_ALL ^ E_NOTICE); function render_news($feed_url, $showdetail, $headlinestyle, $detailstyle) { global $show_detail, $headline_style, $detail_style, $max, $count, $insideitem, $insideimage; $insideitem=false; $insideimage=false; $count = 0; $show_detail = $showdetail; $headline_style = $headlinestyle; $detail_style = $detailstyle; $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characterData"); $fp = @fopen($feed_url,"r"); // or die("Error reading RSS data."); if ($fp) { while ($data = fread($fp, 4096)) xml_parse($xml_parser, $data, feof($fp)) or die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); fclose($fp); } else { echo '<span class="'. $detail_style .'">Syndicated content not available</span>'; } // Free up memory used by the XML parser xml_parser_free($xml_parser); } function startElement($parser, $name, $attrs) { global $insideitem, $tag, $title, $description, $link, $image, $insideimage; if ($insideitem || $insideimage) { $tag = $name; } if ($name == "ITEM" ) { $insideitem = true; } if ($name == "IMAGE") { $insideimage = true; } } function endElement($parser, $name) { global $insideitem, $tag, $title, $description, $link, $image, $insideimage, $show_detail, $headline_style, $detail_style, $count, $max; if ($name == "URL") { $insideimage=false; $image=""; } else if ($name == "ITEM" && $count < $max) { $count++; printf('<a href="%s" class="'. $headline_style .'" target="_blank"><b>%s</b></a><br>',trim($link),trim($title)); if ($show_detail) printf('<span class="'. $detail_style .'">%s</span><br>',trim($description)); else { echo "<br>"; printf('<span class="'. $detail_style .'">%s</span><br>',trim($description)); echo "<br>"; } $title = ""; $description = ""; $link = ""; $insideitem = false; } else if ($count >= $max) { $title = ""; $description = ""; $link = ""; $insideitem = false; } } function characterData($parser, $data) { global $insideitem, $tag, $title, $description, $link, $image, $insideimage; if ($insideimage) { switch ($tag) { case "URL": $image .= $data; break; } } if ($insideitem ) { switch ($tag) { case "TITLE": $title .= $data; break; case "DESCRIPTION": $description .= $data; break; case "LINK": if (!is_string($link)) $link=""; $link .= $data; break; } } } ?>
et un code pour l'executer
<?php include("rss.php"); //$headline_style = 'news'; $headline_style = ''; $description_style = 'Arial,'; $feed_url = 'http://www.mon.url-vers/lefichier/rss.xml'; $show_detail = false; $insideitem = false; $tag = ""; $title = ""; $description = ""; $link = ""; $image = ""; $insideimage = false; $max = 3; $count = 0; render_news($feed_url, $showdetail, $headlinestyle, $detailstyle) ; ?>
J'ai plusieurs soucis....
1 Le premier c'est que pour pouvoir afficher la description de chaque article je suis obliger de forcer une boucle if : (normalement dans le else je n'ai rien, et je ne sait pourquoi a chaque fois je tombe dans l'else)
[B]if/B ($show_detail) [B]printf('<span class="'. $detail_style .'">%s</span><br>',trim($description));/B [B]else/B { echo "<br>"; [B]printf('<span class="'. $detail_style .'">%s</span><br>',trim($description));/B echo "<br>";
Comment eviter ce bouclage? Pourquoi la description ne s'affiche pas?
2 Mon second problème est due aux accents :
[QUOTE] données - Sécurité - sûreté /QUOTE impossible de comprendre le texte ! ma page php contenant le code d'execution est pourtant en [B]charset=iso-8859-1/B
Comment changer le type iso du resultat obtenu ??
3 Mon troisième problème c'est qu'en affichant les lien rss et la description, en bas du flux "http://rss.feedsportal.com/c/681/f/8820/index.rss" apparaissent les images "partager cet article" et "bookmark" .
Comment supprimer cette affichage d'image?
Je voudrais par la suite en arriver à un resultat comme http://www.secuser.com/actu/index.htm
Soft, sans erreur d'accent -utf-8/iso-8859-1, et avec une belle mise en forme... :roll:
Est-ce possible en PHP ??
En vous remerciant d'avance pour votre aide et vos éclaircissement !!!
A voir également:
- MODIFICATION SCRIPT Parser RSS-à l'aide svp !
- Suivi de modification word - Guide
- Script vidéo youtube - Guide
- Logiciel gratuit modification pdf - Guide
- Tiny tiny rss - Télécharger - Flux RSS
- Modification dns - Guide
8 réponses
salut tout le monde, troisieme mois passé sur ce pronleme pouvez vous m'aider s'il vous plait ?
Merci
Merci
Personne pour m'aider svp?
--> Comment eviter ce bouclage? Pourquoi la description ne s'affiche pas?
La date de publication se trouve entre des balises PubDate, comment l'afficher ??
Merci a vous
--> Comment eviter ce bouclage? Pourquoi la description ne s'affiche pas?
La date de publication se trouve entre des balises PubDate, comment l'afficher ??
Merci a vous
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question