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

  FORUM HardWare.fr
  Programmation
  PHP

  Recherche dans une base sql ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Recherche dans une base sql ?

n°797020
peemousse
Posté le 16-07-2004 à 00:40:12  profilanswer
 

Voila, j'ai une base SQL avec plusieurs données ...  
Il est possible de faire plusieurs types de recherche.  
 
Comment faire une recherche intelligente ?  
 
je m'explique : j'ai comme donnée Tupac, un utilisateur recherche 2pac  
 
Je voudrais que la base renvoie la bonne réponse.  
 
Comment faire ?  
 
merci

mood
Publicité
Posté le 16-07-2004 à 00:40:12  profilanswer
 

n°797031
jagstang
Pa Capona ಠ_ಠ
Posté le 16-07-2004 à 00:45:22  profilanswer
 

c'est pas possible ça (simplement)
 
tu peux faire un LIKE '%pac%' qui va te sortir les bonnes infos. par contre 2pac [:spamafote]...


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°797046
dabourn
Posté le 16-07-2004 à 00:51:38  profilanswer
 

Un like...

n°797066
jagstang
Pa Capona ಠ_ಠ
Posté le 16-07-2004 à 01:11:42  profilanswer
 

lis le topic stp (encore une fois)
 
il veux taper "2pac" et que la requête lui retourne "tupac"
 
ça va un peu plus loin qu'un simple like...


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°797072
Mr Mala
Posté le 16-07-2004 à 01:16:32  profilanswer
 

Clair .. mais le problème, c'est qu'il devrait alors carément gérer une table de correspondances de phonèmes même si il n'y a aucun rapport "grammatical" !
Paske "tu" et "2" ... c'est un peu comme si je voulais un résultat identique pour une recherche sur "infARCtuc" et "infRACtus" !!!

n°797092
peemousse
Posté le 16-07-2004 à 01:49:01  profilanswer
 

Tupas et 2pac c'etait un exemple.
 
Je veux juste que si l'utilisateur n'est pas sur de l'orthographe ca ne poses pas de problème.
 
exemple: titre de chanson
- here's my love
- here is my love
 
exemple: Artiste
- Ghostface killa
- Ghostface killah's
 
le problème du LIKE c'est que je ne sais pas à l'avance quel va etre la recherche.
 

Code :
  1. $artist = trim(htmlspecialchars(addslashes($_POST["search"])));
  2. $sql="SELECT * FROM song WHERE artist = '$artist'";
  3.   $req=mysql_query($sql);


Message édité par peemousse le 16-07-2004 à 01:53:44
n°797099
Mr Mala
Posté le 16-07-2004 à 02:00:18  profilanswer
 

Bon ben si tu ne veux pas gérer une table de "potentielles" correspondances, peut-être que tu devrais te pencher sur les possibilités des expressions régulières de ton serveur SQL ...

n°797100
allopassxp
Vive l'excentricité !
Posté le 16-07-2004 à 02:08:34  profilanswer
 

il y a également des moyens géniaux pour rechercher des mots dans une base sql... on peut utiliser des fonctions comme SOUNDEX (que je trouve personnellement génial !!!!)

n°797101
peemousse
Posté le 16-07-2004 à 02:09:56  profilanswer
 

je comprends pas bien la notion de potentielles corespondance ?
 
Sinon tu penses que vu les exemples que j'ai donnée ca demande beaucoup de travail ?
 
Edit: en fait je crois qu'il faudrait faire un truc comme  
 
SELECT * FROM song where artist "contient au moins un mot" de '$artist'


Message édité par peemousse le 16-07-2004 à 02:21:14
n°797470
peemousse
Posté le 16-07-2004 à 11:38:14  profilanswer
 

Bon een fait je pense que le FULLTEXT ca va suffire; J'ai indéxé mes champs artistes, titles et albums...
 
Je vais testé on verra :)

mood
Publicité
Posté le 16-07-2004 à 11:38:14  profilanswer
 

n°797487
jagstang
Pa Capona ಠ_ಠ
Posté le 16-07-2004 à 11:44:17  profilanswer
 

au pire, tu fais un champ que tu n'affiche jamais, ou tu stock es les clés alternatives du style
 
nom_artiste : tupac
detail : bla bla bla
key : 2pac twoPac


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°797560
Mr Mala
Posté le 16-07-2004 à 12:35:26  profilanswer
 

JagStang a écrit :

au pire, tu fais un champ que tu n'affiche jamais, ou tu stock es les clés alternatives du style
 
nom_artiste : tupac
detail : bla bla bla
key : 2pac twoPac


 
He he ben c'est ça que j'appellais des -"potentielles" correspondances- ! :p  

n°797615
jagstang
Pa Capona ಠ_ಠ
Posté le 16-07-2004 à 13:21:56  profilanswer
 

ok j'avais pas compris :jap:


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°798777
Mr Mala
Posté le 18-07-2004 à 04:57:52  profilanswer
 

Vu dans un autre topic ( mais sorry, je sais plus lequel ) ... ça peut peut-être t'aider :
fonction soundex

n°798789
Arjuna
Aircraft Ident.: F-MBSD
Posté le 18-07-2004 à 09:48:48  profilanswer
 

JagStang a écrit :

c'est pas possible ça (simplement)
 
tu peux faire un LIKE '%pac%' qui va te sortir les bonnes infos. par contre 2pac [:spamafote]...


y'a pas un &quivalent à SOUNDEX d'oracle sous MySQL ?
 
Car logiquement, si l'équivalent existe, il devrait être capable de faire le lien entre "tupac" et "2pac", car en anglais la prononciation des deux est similaire.

n°798790
Arjuna
Aircraft Ident.: F-MBSD
Posté le 18-07-2004 à 09:50:54  profilanswer
 

allopassxp a écrit :

il y a également des moyens géniaux pour rechercher des mots dans une base sql... on peut utiliser des fonctions comme SOUNDEX (que je trouve personnellement génial !!!!)


arf, grillé :jap:

n°798829
Mr Mala
Posté le 18-07-2004 à 12:34:20  profilanswer
 

allopassxp a écrit :

il y a également des moyens géniaux pour rechercher des mots dans une base sql... on peut utiliser des fonctions comme SOUNDEX (que je trouve personnellement génial !!!!)


 
argh ! grillé aussi ! :p


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

  Recherche dans une base sql ?

 

Sujets relatifs
[ASP] moteur de recherche pour une base accessRecherche d'un champ sur une base de données Oracle
Algorithme de recherche dans une base de donnéesrecherche dans une base mysql
Comment faire un moteur de recherche sur une base access ?Recherche base de données
Recherche composants "base de données"VB et recherche base de donnée est-ce possible?
Recherche base de données !!recherche base de donnees
Plus de sujets relatifs à : Recherche dans une base sql ?


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