Après avoir lu le dernier article de Digital Web Magazine, je me suis dit que bosser avec XML en PHP c’était vachement plus simple que je ne le pensais.
J’ai donc essayé de mettre en pratique ce qui est expliqué dans l’article pour arriver à afficher sous forme de liste les titres ainsi que les liens vers les billets d’un blog depuis un flux RSS venant de WordPress
Pour voir à quoi ressemble un flux RSS venant d’un blog sous WordPress. Je vous propose de jeter un coup d’oeil, totalement au hasard, sur celui de Scoble : http://scobleizer.com/feed/ (sous firefox, clic droit, afficher la source)
Et voici mon code:
[code]<?php
// ?feed=rss2 car je n’utilise par la ré-écriture d’url de WordPress pour mes tests
$rssblog = “http://monadresse/blog/?feed=rss2”;
// Chargement du fichier XML
$xml = @simplexml_load_file($rssblog) or die (“no file loaded”);
Et bien-sûr cela ne marche pas. Sinon je ne serais pas en train d’écrire tout ça… B)
J’ai essayé différentes approches sans succès. Je ne rentre pas dans la boucle foreach… Ce qui gêne peut-être c’est le fait qu’il y a des et des ailleurs que dans les . Et puis $xml->link semble perturber PHP, il y voit la fonction link.
J’attends donc vos explications pour me débloquer. Merci B)
c’est le @ qui te fout la merde.
C’est un caractere special qui dit “si jamais y a une erreur pas grave, fait rien et passe a la suite. Si c’est grave arrete tout. Mais tu le dis pas a l’utilisateur, c’est secret”
Donc pour debugger un soft, c’est clairement pas ideal…
Et bien-sûr cela ne marche pas. Sinon je ne serais pas en train d’écrire tout ça… B)
J’ai essayé différentes approches sans succès. Je ne rentre pas dans la boucle foreach… Ce qui gêne peut-être c’est le fait qu’il y a des et des ailleurs que dans les . Et puis $xml->link semble perturber PHP, il y voit la fonction link.[/quote]
Je ne suis pas allé voir comment c’est SimpleXML mais il y a un truc qui me fait tiquer dans ta boucle là : tu fais un foreach pour récupérer chaque élément dans la variable $item et tu n’utilises pas cette variable dans ton echo ?
Edit : En plus même en utilisant $item dans ton echo ça ne marchera pas non plus. Allez deux tips : analyse bien la structure du flux rss que tu donnes en lien (je suppose que c’est celui que tu veux afficher) et relis l’article de Digital dont le code est pourtant explicite.
C’était un peu n’importe quoi ce que j’avais fait. Cela m’apprendra à lire l’article vite fait le soir à moitié en mode zombie. Et de vouloir coder le truc quelques jours plus tard à toute vitesse sans prendre la peine de relire attentivement l’article.
Je laisse le code corrigé pour ceux qui se retrouveront peut-être un jour bloqué bêtement comme moi.
Bon en gros, simplexml, une fois que tu as appris à contourner tous les problèmes inhérents à la fonction et ce qui lui manque, tu as fini par recoder toi-même un max de trucs. Pour avoir jouer avec beaucoup dans le cadre d’un mémoire sur php5, je te conseillerais plutôt: http://simplepie.org/