XML et condition php

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


bradeux
WRInaute impliqué
WRInaute impliqué
 
Messages: 385
Inscription: Mer Mai 18, 2005 12:51

XML et condition php

Message le Jeu Sep 06, 2007 17:32

Bonjour à tous,

J'ai un petit soucis en XML! :oops:

Pour explication:
>> j'ai un fichier products.xml dans lequel j'ai 200 produits dans une dizaine de catégories différentes (ex: vetement, chaussure...)
Comme je n'ai qu'un fichier je suis obligé de poser une condition pour avoir sur ma page "vetement" que les produits dans cette catégorie.
J'ai donc pensé à ajouter dans l'URL une cat=vetment comme ceci:
produit.php?cat=vetement...
sauf que je coince car je ne sais pas comment l'intérpreter dans le code.

Voici ce que j'ai pour l'instant mais qui marche pas...
Code: Tout sélectionner
<?php





    $fichier = "xml/products.xml";

   

   function fonctionBaliseOuvrante($parseur, $nomBalise, $tableauAttributs)

    {

        global $derniereBaliseRencontree;



        $derniereBaliseRencontree = $nomBalise;

    }

   

    function fonctionBaliseFermante($parseur, $nomBalise)

    {

        global $derniereBaliseRencontree;

        $derniereBaliseRencontree = "";

    }

   

    function fonctionTexte($parseur, $texte)

    {
        global $derniereBaliseRencontree;

      switch ($derniereBaliseRencontree) {

         case "NAME":
                        
            if($texte!=$_GET['cat']){
            exit;
            }
            else
            {
            echo "<p class='libelle'>Catégorie ".$texte."</p>";
            }
            break;
            
            
         //case "PRODUCTTYPE":

            //echo "<p class='libelle'>".$texte."</p>";

            //break;   
            

         case "PRODUCT_URL":


            echo "<span class='table'><span><a href='".$texte."'>";

            break;
            

         case "BIG":

            echo "<img src='".$texte."' border='0'/></a></span>\n";

            break;
            

         //case "PRICE":

            //echo "<p class='libelle'>".$texte." €</p>\n\n\n\n";

            //break;
            

         /*case "TEXTE_LANCEUR_COFFRET":

            $max=30; 

            if(strlen($texte)>=$max){$texte=substr($texte,0,$max); 

            $espace=strrpos($texte," "); 

            $texte=substr($texte,0,$espace)."..."; }

            echo "<p>".$texte."</p>\n";

            break;*/


         case "FIN":

            echo "</div></div>\n\n";

            break;

      }
    }

   

   

   



    $parseurXML = xml_parser_create();



    xml_set_element_handler($parseurXML, "fonctionBaliseOuvrante", "fonctionBaliseFermante");

    xml_set_character_data_handler($parseurXML, "fonctionTexte");



    $fp = fopen($fichier, "r");

    if (!$fp) die("Impossible d'ouvrir le fichier XML");



    while ( $ligneXML = fgets($fp, 1024)) {

        xml_parse($parseurXML, $ligneXML, feof($fp)) or

            die("Erreur XML");

    }

   

    xml_parser_free($parseurXML);

    fclose($fp);

?>


A votre avis?
Merci pour votre aide :D
Vincent


julienr
WRInaute passionné
WRInaute passionné
 
Messages: 866
Inscription: Mar Aoû 05, 2003 14:49

Re: XML et condition php

Message le Jeu Sep 06, 2007 19:11

salut,
bradeux a écrit:sauf que je coince car je ne sais pas comment l'intérpreter dans le code.

qu'est-ce qut tu veux dire par là car ton code semble tenir compte d'un $_GET['cat']


bproductiv
WRInaute accro
WRInaute accro
 
Messages: 2837
Inscription: Lun Déc 27, 2004 16:29

Message le Ven Sep 07, 2007 7:49

ben faut récupérer ta variable et tester sa valeur.


bradeux
WRInaute impliqué
WRInaute impliqué
 
Messages: 385
Inscription: Mer Mai 18, 2005 12:51

Re: XML et condition php

Message le Ven Sep 07, 2007 8:32

Le soucis est que ca ne fonctionne pas car s'il ne trouve pas la même catégorie que celle en parametre dans l'URL alors il "exit" du coup il sort complétement de la boucle et ne poursuit par les autres enregistrements.

Moi ce qu'il me faut c'est que s''il trouve pas, il aille à l'enregistrement suivant...[/quote]


julienr
WRInaute passionné
WRInaute passionné
 
Messages: 866
Inscription: Mar Aoû 05, 2003 14:49

Message le Ven Sep 07, 2007 9:16

replace exit par return;


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

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