IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[DOM] PHP et parsage de XML


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 138
    Par défaut [DOM] PHP et parsage de XML
    Bonjour,
    J'essaye de parser un flux XML à l'aide du php mais je bloque sur un morceau de code. En effet je voudrais rajouter manuellement un nom de fichier à la suite du chemin recuperer dans le flux XML pour l'insertion d'une image. (voir ci-dessous avant le commentaire)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    <?php 
     
    # Configuration 
     
    $fichier_xml = "http://www.site.com/xml.php"; # Placez ici l'adresse du flux 
    $nombre_limite = 1; # Nombre maximum d'éléments à afficher 
     
     
    # Affichage du Flux 
    $file = fopen($fichier_xml,"r"); 
    if ($file) { 
    while (!feof($file)) $raw .= fread($file,32000); 
    fclose( $file ); 
     
    if(eregi("<item>(.*)</item>",$raw,$rawitems)){ 
    $items = explode("<item>", $rawitems[0]); 
    $nb = count($items); 
    $maximum = (($nb-1) < $nombre_limite) ? ($nb-1) : $nombre_limite; 
     
    for ($i=0;$i<$maximum;$i++) { 
    eregi("<longue_description>(.*)</longue_description>",$items[$i+1], $title); 
    eregi("<thumbs_path>(.*)</thumbs_path>",$items[$i+1], $link); 
    eregi("<taille>(.*)</taille>",$items[$i+1], $taille); 
    eregi("<duree>(.*)</duree>",$items[$i+1], $duree);
    echo "- <a href=\"".$link[1]."\" target=\"_blank\">".$title[1]."</a><br />"; 
    echo "- <img src=\"".$link[1].""02.jpg\" >";
    //Le code est faux, mais j'essaye de rajouter /02.jpg à la suite du chemin car le flux xml me donne juste le lien vers un dossier
    } 
    } 
    } 
    ?>

  2. #2
    Membre chevronné
    Avatar de genova
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 487
    Par défaut
    Salut,
    tu peux utiliser simplexml (php5) : http://fr2.php.net/manual/fr/ref.simplexml.php pour parser ton document XML
    Testez le forum Fire Soft Board, un forum libre, gratuit et français.

    Système de template de phpBB - Lisez la FAQ PHP avant toute question si vous débuttez en PHP.

  3. #3
    Membre émérite
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Par défaut
    utilise le DOM pour parcourir ton fichier !

    http://eusebius.developpez.com/php5dom/
    Dia [ Page DVP ] [ Site pro ]

  4. #4
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 138
    Par défaut
    Merci pour vos reponses.

    Mais je commence à un peu comprendre le fichier que j'ai recuperé.
    Savez vous comment à la derniere ligne (ci-dessous) faire en sorte de rajouter /02.jpg à la fin du chemin recuperer sur le flux xml -> link[1]

    Sinon j'obtiens http://www.site.com/thumbs/
    et je voudrais avoir http://www.site.com/thumbs/02.jpg

    echo "- <img src=\"".$link[1].""02.jpg\" >"; cela ne marche pas

    Merci

  5. #5
    Membre émérite
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Par défaut
    avant le 02 y a 2 " qui se baladent
    en xhtml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '- <img src="' . $link[1] . '02.jpg" alt="truc" />';
    Dia [ Page DVP ] [ Site pro ]

  6. #6
    Membre confirmé
    Inscrit en
    Août 2006
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 138
    Par défaut
    Modif '/02.jpg'

    Super, cela marche enfin.

    Merci beaucoup.

    Sinon tu trouves ce script comment ?
    Tu me conseilles d'utiliser quoi en tant que débutant ?

Discussions similaires

  1. [DOM] Lecture d'un fichier XML en url en PHP
    Par diakite4 dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 21/05/2008, 16h31
  2. [DOM] Problème d'upload puis parsage fichier XML
    Par Valter dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 02/05/2008, 14h55
  3. [DOM][PHP] Gros fichier XML
    Par titoff85 dans le forum APIs
    Réponses: 3
    Dernier message: 29/04/2008, 15h30
  4. [DOM] PHP et XML pour stocker et afficher des données
    Par sasaas dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 22/02/2008, 18h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo