Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1724 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Comparer les valeurs de deux tableaux

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comparer les valeurs de deux tableaux

n°1318903
Djule01
Posté le 05-03-2006 à 12:43:57  profilanswer
 

Bonjours  
 
J'aurais besoin d'aide svp  
 
Je suis en train de créer un site web de vente en ligne, je suis pour cela en train de créer une fonction de recherche qui va interroger ma base de donnée pour par la suite afficher le produit demandé.  
 
Ainsi lorsque l'utilisateur tape par exemple Harry Potter, je coupe sa requete en deux, que j'inscris dans un tableau.  
Par exemple  
$tab_1[1]="Harry";  
$tab_1[2]="Potter";  
 
Je fais de même pour ma base de donnée que je sépare ren mot et que je classe dans un autre tableau. Tout allait bien jusqu'au moment ou j'ai voulu comparer ces deux tableaux.  
 
J'ai ainsi pu voir que si je compare les deux tableaux le langage php compare a la fois les clés et les valeurs.  
 
Je veux comparer seulement les valeur du tableau entre elles savez vous comment je peux proceder.  
 
Je vous remercie d'avance pour votre aide

mood
Publicité
Posté le 05-03-2006 à 12:43:57  profilanswer
 

n°1318906
gatsu35
Blablaté par Harko
Posté le 05-03-2006 à 12:54:01  profilanswer
 

Attends, tu veux dire par là que tu recupères toute la base de données et que tu cherches à comparer les tableaux, ca va dans ta tete ou quoi ?  
tu sais qu'en faisant une requete SQL genre WHERE bidule like mahcin ca marche très bien
 
et meme parfaitement
 
attend que quelqu'un de mieux informé que moi arrive :o

n°1318910
Djule01
Posté le 05-03-2006 à 13:01:45  profilanswer
 

Non tu ma pas bien compris , en aucun cas je stock toute ma base de donnée dans un tableau, le probleme est que dans ma base de donné il y a inscrit par exemple "Harry Potter", or si l'utilisateur tape Harry et que je lance tel quel la requete cela ne va pas marché, c'est pour cela que le "harry potter", je le coupe et je le place dans une variable temporaire (un tableau) dans lequel je place harry (tab[1]) et Potter (tab[2]).
 
Ma méthode marche mais uniquement lorsque les clés et les valeurs sont les même or je voudrais un systeme qui ne compare que les clé entre elles.
 
Voila, j'espere avoir été le plus clair possible

n°1318912
Djule01
Posté le 05-03-2006 à 13:03:18  profilanswer
 

que les valeurs entre elles (dsl de l'erreur du dessus)
 
je reformule : je voudrais un systeme qui ne compare que les valeurs entre elles sans se soucier des clés.  

n°1318929
gatsu35
Blablaté par Harko
Posté le 05-03-2006 à 13:37:29  profilanswer
 

un OR quoi c'est ca ?
 
 
en gros tu voudrais que la requette "harry potter" (sans les guillemets) te retourne tous les articles contenant harry et tous les articles contenant potter ainsi que tous les articles contenant harry et potter ?

n°1319065
fluminis
Posté le 05-03-2006 à 18:40:32  profilanswer
 

SELECT col1,col2,... FROM maTable WHERE col1 LIKE '%Harry%' OR col1 LIKE '%potter%'
 
sinon cote php, pour comparer tes tableaux, tu vas t'embeter.
assure toi que tes deux tableaux sont bien triés dans l'ordre croissant
sinon array("harry","potter" ) et array("potter","harry" ) tu vas avoir du mal a les comparer


---------------
http://poemes.iceteapeche.com - http://www.simuland.net
n°1319109
benamoubea​ch
tivuplai
Posté le 05-03-2006 à 20:21:30  profilanswer
 

euh les LIKE c'est super pas propre et a la base, pas adapté aux recherches . tu dois regarder du coté de MATCH AGAINST

n°1319194
Djebel1
Nul professionnel
Posté le 06-03-2006 à 07:38:08  profilanswer
 

peux-tu préciser en quoi MATCH AGAINST est mieux que LIKE ? c'est pas super explicite dans la doc

n°1319208
anapajari
s/travail/glanding on hfr/gs;
Posté le 06-03-2006 à 09:34:09  profilanswer
 

fluminis a écrit :

sinon cote php, pour comparer tes tableaux, tu vas t'embeter.


 
Bin non: array_diff [:spamafote]

n°1319237
cinocks
Posté le 06-03-2006 à 10:37:42  profilanswer
 

Djebel1 a écrit :

peux-tu préciser en quoi MATCH AGAINST est mieux que LIKE ? c'est pas super explicite dans la doc


 
le MATCH AGAINST fonctionne avec un champ indexé en fulltext. Le LIKE a tendance à n'exploiter aucun index pour sa recherche. Il va donc scanner chaque enregistrement et comparer la valeur du champ avec ton masque.
 
 
Tu devines que le MATCH AGAINST est plus efficace.


---------------
MZP est de retour
mood
Publicité
Posté le 06-03-2006 à 10:37:42  profilanswer
 

n°1319594
Djebel1
Nul professionnel
Posté le 06-03-2006 à 16:50:48  profilanswer
 

hmm hmm oki merci, je n'utilisais que des like :x


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Comparer les valeurs de deux tableaux

 

Sujets relatifs
creer requete pour inserer des valeurs dans ACCESScomparer des fichiers XML
inserer des sous tableaux dans une base de données ?[JSP] [résolu] cookie, plusieurs valeurs ?
comment mettre des valeurs bout a bout pour un POST[php] comparer le login/mdp avec l'active directory
[SQL] Requête pour obtenir les valeurs présentes dans 1 seule table[VBA][EXCEL] 2 valeurs pour une même cellule ?
Tableaux dynamiques[Html/CSS] Virer les tableaux
Plus de sujets relatifs à : Comparer les valeurs de deux tableaux


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR