[RESOLU] Recherche dans un fichier XML

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Recherche dans un fichier XML

Re: Recherche dans un fichier XML

par telnes » 12 juil. 2010, 15:48

bonjour

moi je mettrais les fichier en db et je ferais les recherches dans la db.

++

Re: Recherche dans un fichier XML

par stealth35 » 12 juil. 2010, 15:19

pour recherche du contenu c'est avec contains() :wink:

Re: Recherche dans un fichier XML

par bobby » 12 juil. 2010, 15:16

J'ai des fichiers XML assez volumineux (jusque 10Mo) et je veux faire une recherche qui mix recherche libre et recherche par critère. Voici un exemple de fichier XML :

<?xml version="1.0" encoding="UTF-8"?>
<produits>
<produit>
<trademark>Renault</trademark>
<title>Renault Clio TDI 95 CV</title>
<desc>Renault Clio 5 portes gris metalisé</desc>
<full_desc/>
<url><![CDATA[http://www.toto.com]]></url>
<other/>
<price currency="EUR">14099</price>
<tax>
<name/>
<price currency="EUR"/>
</tax>
<shipping>
<delivery>Livrable au plus tard le 26/10/2010</delivery>
<price currency="EUR"/>
</shipping>
<category>
<merchant>
<name>Clio</name>
<id/>
</merchant>
</category>
<storeData>
<data type="Modele">TDI 95CV</data>
<data type="Carburant">Diesel</data>
<data type="Prix catalogue">18999.00</data>
<data type="Reduction pourcentage">13.5</data>
<data type="Reduction montant">4900</data>
<data type="Emission CO2">135 g/km</data>
<data type="motorisation" unit="cm 3">95 ch</data>
<data type="nbportes">5</data>
<data type="boite">Automatique</data>
<data type="Coloris">Sur mesure</data>
</storeData>
</produit>
</produits>

Je dois pouvoir faire une recherche libre sur <trademark>, <title>, <desc> et sur les <data type>.
Je dois aussi pouvoir faire une recherche sur critère (Essence/diesel, nombre de portes...) sur les <data type>

J'avais commencé en utilisant xpath/xquery, mais je suis confronté à plusieurs problèmes :
- je n'ai pas trouvé le moyen de faire une recherche qui matche le contenu partiel d'une balise (par exemple une recherche sur "clio" dans la balise <title> doit matcher, actuellement cela ne matche que lorsque je recherche le contenu exact "Renault Clio TDI 95 CV" )
- les requètes sont sensibles à la casse
- difficulté de rechercher dans des balises situées à des niveaux différents dans l'arborescence

Merci par avance pour vos compléments de réponses.

Re: Recherche dans un fichier XML

par stealth35 » 12 juil. 2010, 00:10

ce dépend de la forme des données et du type de recherche (libre, par critères...), et surtout de la taille des XML

Recherche dans un fichier XML

par bobby » 11 juil. 2010, 19:55

Bonjour,

Je dispose de plusieurs fichiers XML, qui sont des catalogues de produits. Je souhaite créer un moteur de recherche, en utilisant ces fichiers comme base de données, afin qu'un utilisateur puisse rechercher le produit qu'il souhaite (recherche multi balises).

Quelle est le meilleur moyen de réaliser ce moteur de recherche en PHP : xpath, SAX, ou autre méthode ?
Où puis-je trouver des exemples d'implémentation similaires ?

Merci par avance.