begin process at 2012 02 11 21:22:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ColdFusion

 > 

Base de données

 > 

MySQL

 > 

Fonction de recherche


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Fonction de recherche

mardi 30 mars 2010 à 00:51:53 | Fonction de recherche

Mushcmwa

Bonjour (bonsoir) a tous,

Je développe actuellement un forum en coldfusion, j'arrive au bout mais je me casse la tête depuis quelques heures pour essayer d'implémenter une recherche dans tout mon forum.

Ma première question porte sur la requête SQL. Comment faire pour séparer les différents mots tapés dans la recherche, ceux ci seront séparés par des expaces?

Ensuite, comment comparer un champ de ma table avec chaque terme de la recherche séparément? Pour le moment je suis arrivé à comparer seulement si un seul terme est inséré dans la recherche, mais je bloque sur un recherche multi-mots.

Toute aide est la bienvenue, aussi infime qu'elle soit, parce que là je ne sais plus comment faire.
jeudi 1 avril 2010 à 09:22:32 | Re : Fonction de recherche

nickadele

Membre Club Administrateur CodeS-SourceS

Bonjour,

je comprend pas où est ton problème, utilise le 'OR' SQL

Where champX = '%motA%' OR champX = '%motB%'


Nickadele
non, ma belle ne s'appel pas Adèle
Mon Blog
jeudi 1 avril 2010 à 15:09:53 | Re : Fonction de recherche

Mushcmwa


Je détaille un peu plus,

- Ma recherche est stockée dans une variable appelée 'rech' qui peut donc contenir un ou plusieurs mots.
- J'ai 3 tables dans ma DB, une table de thème, une table de sujet et une table de réponses.

Voici a quoi ressemble un affichage :

- thème1
--- sujet1
------ reponse1
------ reponse2
--- sujet2
------ reponse
--- sujet3

J'ai essayé pas mal de choses et chaque fois j'ai un résultat incomplet.
Tout d'abord,

SELECT * FROM reponses,sujet,themes
WHERE reponses.fk_sujet = sujets.id_sujet
AND sujets.fk_theme = themes.id_themes (les jointures habituelles)
AND (theme LIKE '%#rech#%'
OR sujet LIKE'%#rech#%' (theme,sujet,reponse = variables contenant l'intitulé correspondant)
OR reponse LIKE '%#rech#%')

Bon après je pense que le problème se situe dans mes conditions d'affichage car je n'avais que les thèmes dans lesquels apparaissaient les mots de la recherche, mais dans le cas ou un sujet et/ou une réponse contient un terme de la recherche (mais pas le thème) ceux-ci ne s'affiche pas.

Donc j'aimerais savoir si ma requête parait correcte et éventuellement comment tester mes différentes conditions (et s'il y a un ordre précis pour le faire).

Ah aussi, j'ai un petit soucis, comment effectuer un cfif sur un LIKE SQL?
(j'ai essayé un IsDefined(......) ou un truc du genre mais ça avait pas l'air d'aller mieux, peut-être un soucis de programmation de ma part...)

PS : Merci nickadele pour toutes tes réponses sur tout le forum qui m'ont sorti plus d'une fois de la m****
lundi 5 avril 2010 à 12:18:35 | Re : Fonction de recherche

nickadele

Membre Club Administrateur CodeS-SourceS
Bonjour,

apparemment tu as des problèmes à différents niveaux.
Donc commence par le début.
Fait des tests (différentes valeurs) avec ton SQL et utilises CFDUMP pour afficher le résultat.
Attention car à mon avis tu devrais mettre un OUTHER JOINT entre tes tables, thèmes sans sujet ou sujet sans reponse.
Au niveau des conditions SQL, tu peux ajouter des cfif dans le SQL sans problème.
Ex : Un peu bête, mais c'est pour te montrer que c'est possible. Si ma boolean boolNom est à vrai je prend le Nom, sinon je prend le Prénom de ma table Client.
<cfquery>
SELECT <cfif boolNom>Nom<cfelse>Prenom</cfif>
FROM Client
</cfquery>


Nickadele
non, ma belle ne s'appel pas Adèle
Mon Blog


Cette discussion est classée dans : fonction, comparer, recherche, mots, forum


Répondre à ce message

Sujets en rapport avec ce message

Question bete ! comment faire une fonction en ColdFusion ?? [ par c3po ] Désole mais je bloque la dessus !Merci Fonction [ par Pas ] Et au fait il n'est possible de faire de fonction et de classe en ColdFusion par hasard. Merçi d'avance. Recherche [ par Link ] je recherche un site en francais qui explique le fonctionnement de cold fusion... parce que j'utilise dreamweaver mais je voudrais comprendre plus à f Calcul d'une ligne avec Access [ par mariochk ] Salut, Existe-t'il une fonction qui calcul d'un coup toute une ligne sur Access (non une colonne). J'ai plusieurs rubriques. Il accepte dans les requê recherche programme d un carnet d adresse en langage "c". [ par mathieu ] salut je suis a la recherche d'un programme réalisant un carnet d'adresse en langage "c" c'est super urgent et ça serait trés gentil de votre part, me Forum-city [ par sebrs1 ] Bonjour à tous,j'ai fais un site pour que tous le monde pose des question sur n'importe quel sujet, alors si vous avez des questions en programmation, probleme URGENT d'affichage requete sur liste deroulante [ par keta23 ] hello,j'arrive po à faire la relation sur mes requete!!en faite j'ai trois liste deroulantes,je souhaiterais faire une selection sur ma 1er liste dero Un forum de programmation [ par hm1ch ] Un nouveau site de programmation vient d'ouvrir ses portes aux particuliers expérimentés ou non au monde de la programmation. Sur ce site vous y trouv Forum et sondage de cfmfrance [ par adouek ] Salut,J'aurrai voulu savoir ou peut-on trouver les sources du forum et du mini sondage de cfmfrance.comMerçi d'avance formater du texte dans un tableau [ par melany ] Lorsque je veux afficher un texte tappé au kilomètre sans espace entre les mots, dans un tableau auquel j'ai donné une taille fixe, je n'obtiens pas l


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,685 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales