Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

MOTEUR DE RECHERCHE DANS UNE BASE DE DONNÉES


Information sur la source

Catégorie :E-Commerce Classé sous : moteur, recherche, bdd, sql, search Niveau : Initié Date de création : 29/04/2003 Date de mise à jour : 29/04/2003 23:27:21 Vu : 22 419

Note :
4 / 10 - par 3 personnes
4,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

Moteur de recherche en coldfusion qui accede a un champ ou plusieurs dans des bases de donnees et qui recherche des mots.

Tres pratique pour les boutiques en lignes et commerces
 

Source

  • <CFQUERY name="afficher" datasource="nom_de_votre_base_access">
  • SELECT * FROM table_de_votre_base WHERE 0=0
  • <CFLOOP index="i" from="1" TO="#ListLen(Form.champ_texte, ' ')#">
  • AND Nom_Colonne_BD LIKE '%#ListGetAt(Form.champ_texte, i, ' ')#%'
  • Or Nom1_Colonne_BD LIKE '%#ListGetAt(Form.champ_texte, i, ' ')#%'
  • </CFLOOP>
  • or reference = '#Form.champ_texte#'
  • </CFQUERY>
  • <HTML>
  • <HEAD>
  • <TITLE></TITLE>
  • <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD>
  • <BODY bgcolor="#0099FF" text="#FFFFFF" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">
  • <CFIF #Form.Champ_texte# is "" >
  • Vous n'avez rien inscrit
  • </CFIF>
  • <CFIF #afficher.RecordCount# is "0" and #Form.Champ_texte# is not "" >
  • Rien ne correpond
  • </CFIF>
  • <cfif #Form.Champ_texte# is not "" and #afficher.RecordCount# is not "0" >
  • <cfoutput query="afficher" startrow="1" maxrows="1">
  • <B>#afficher.RecordCount#</B> produit <br><br>
  • </cfoutput>
  • <TABLE border="1" align="center" bordercolor="#999999" bgcolor="#000000">
  • <cfoutput query="afficher">
  • <TR>
  • <TD width="103" >
  • <B><font color="##FFFFFF">#CurrentRow#</font>- </B> </TD>
  • <TD width="223">
  • <P><font color="##FFFFFF">#Nom_Colonne_BD# </font>
  • <TD width="144">
  • <font color="##FFFFFF"> <b>#Nom1_Colonne_BD#</b></font></TD>
  • </TR>
  • </cfoutput>
  • </TABLE>
  • </CFIF>
  • <BR><BR>
  • <DIV align="center">
  • <A href="javascript:history.back()">
  • Recherche Infructueuse, cliquez ICI</A>
  • </DIV>
  • </BODY>
  • </HTML>
<CFQUERY name="afficher" datasource="nom_de_votre_base_access">
SELECT * FROM table_de_votre_base WHERE 0=0
<CFLOOP index="i" from="1" TO="#ListLen(Form.champ_texte, ' ')#">
AND Nom_Colonne_BD LIKE '%#ListGetAt(Form.champ_texte, i, ' ')#%'
Or Nom1_Colonne_BD LIKE '%#ListGetAt(Form.champ_texte, i, ' ')#%'
</CFLOOP>
or reference = '#Form.champ_texte#'
</CFQUERY>

<HTML>
<HEAD>
<TITLE></TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD>

<BODY bgcolor="#0099FF" text="#FFFFFF" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">

<CFIF #Form.Champ_texte# is "" >
Vous n'avez rien inscrit
</CFIF>

<CFIF #afficher.RecordCount# is "0" and #Form.Champ_texte# is not "" >
Rien ne correpond
</CFIF>

<cfif #Form.Champ_texte# is not "" and #afficher.RecordCount# is not "0" >
<cfoutput query="afficher" startrow="1" maxrows="1">
<B>#afficher.RecordCount#</B> produit <br><br>
</cfoutput>
  <TABLE border="1" align="center" bordercolor="#999999" bgcolor="#000000">
    <cfoutput query="afficher"> 
      <TR> 
        <TD width="103" >
          <B><font color="##FFFFFF">#CurrentRow#</font>- </B> </TD>
        <TD width="223"> 
          <P><font color="##FFFFFF">#Nom_Colonne_BD# </font> 
        <TD width="144"> 
          <font color="##FFFFFF"> <b>#Nom1_Colonne_BD#</b></font></TD>
             </TR>
    </cfoutput> 
  </TABLE>
</CFIF>
<BR><BR>
<DIV align="center">
<A href="javascript:history.back()">
Recherche Infructueuse, cliquez ICI</A>
</DIV>
</BODY>
</HTML>

Conclusion

donc, je resume, tt d'abord vous devez creer une base de donnees access. Ici ma base s'appelle nom_de_votre_base_access. Dans cette base, g cree une table qui s'appelle table_de_votre_base et cette table contient des colonnnes appelées ici Nom_colonne_Bd et Nom_Colonne_bd et reference.

Avant de copier le code vous devez creer une page de recherce avec un formulaire et un champ texte ou les clients peuvent entrer des mots... Logique, qui d'ailleurs ici sont séparés par des espaces. Le bouton submit de ce formualire devra avoir pour value le nom de votre fichier .cfm où vous inscrirez le code ke je vous ai donne. Et voila le tour est joue
 

Commentaires et avis

signaler à un administrateur
Commentaire de Dadou911 le 29/04/2003 23:29:41

Ah oui et champ _texte c le nom du champ texte de votre premiere page ou vous inscrivez le texte
ex: &lt;input type="text" name="champ_text"&gt;

signaler à un administrateur
Commentaire de chtit le 02/05/2003 09:52:25

Une toute petite chose:
  Si vous travaillez sur une base de données faisant la différence entre majuscule et minuscule, pensez à mettre vos critères de recherche soit en majuscule soit en minuscule.
Exemple pour une base oracle :
Upper(Nom_Colonne_BD) LIKE upper('%#ListGetAt(Form.champ_texte, i, ' ')#%')

signaler à un administrateur
Commentaire de wari le 03/05/2003 10:32:43

vous pouvez m'aider à crée une base de donnée sous jbuilder
ou bien builder c++

signaler à un administrateur
Commentaire de BenLaKnet le 21/01/2004 09:02:08

Quand on ne peut utiliser l'indexation verity, c'est vrai que d'attaquer directement les champs de la base est bien pratique.

signaler à un administrateur
Commentaire de gastoudou le 23/07/2004 13:54:06

trop bien, malgré que ce soit assez rébarbatif quand on a plusieurs tables avec pas mal de champs, mais merci en tout cas, je ne savais pas trop comment m'y prendre pour faire mon moteur pour le site. tks

signaler à un administrateur
Commentaire de razy le 24/07/2007 17:19:14

Si jamais la table fait quelques dizaines de milliers de lignes... le LIKE rique d'être bien long.
Désormais avec MySQL5 tu peux utiliser cette commande là (à condition que tu crées des index en fulltext) :

SELECT id, body, MATCH (col1,col2) AGAINST ('keywords') AS score
   FROM articles
   WHERE MATCH (col1,col2) AGAINST ('keywords')
   ORDER BY score DESC

Regarde du côté de http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Alias de table d'une bdd a l'autre sous SQL SERVER [ par FREESLY ] Bonjour le monde, voila est ce qu'une personne de grand savoir serait comment faire dans SQL SERVER une nouvelle base de donn&#233;e dont les tables s moteur de recherche et division des enregistrement [ par mrick6315 ] Bonjour, J'ai cr&#233;&#233; un moteur de recherche pour mon site (1 page index.cfm + 1 page results.cfm).Ca fonctionne bien &#224; part que je ne peu Recherche à acheter licence Coldfusion 5 [ par hka ] Bonjour,Je cherche&nbsp; acheter&nbsp; coldfusion&nbsp; 5&nbsp;&nbsp; Macromedia&nbsp; ne le propose plusdes tuyeaux&nbsp;&nbsp; svpMerci Requete SQL [ par alf666666 ] Je désire afficher sur mon site un classement. J'ai deux tables, une table hotel et une table note. Une personne met une note sur un hotel. Donc je d Recherche sur toutes les tables de ma bd [ par alf666666 ] hello, Comment faire une recherche sur toutes les tables de ma BD lorsque l'internaute tape qu'un mot du style, je tape le mot "test" et le site va m Recherche derniere page visitée [ par alf666666 ] Lorsque qu'un client surfe sur mon site (sans se loguer pour l'instant), ensuite il arrive sur une partie de mon site ou il est obligé de se loguer, Ms Access pas assez puissant ? [ par emeric b ] Salut,Jusqu'&#224; pr&#233;sent j'ai toujours d&#233;velopp&#233; des application cfm avec une bdd Ms Access. Cependant il parait qu'une base Access n Se connecter à une base sql [ par Pierre_faucon ] BonjourJe cherche &#224; me connecter &#224; une base SQL avec coldfusion.tous les exemples que je trouve me permettent de me connecter &#224; Access. Recherche Hébergeur CFMX [ par bastoun ] Hello tous, je suis actuellement &#224; la recherche d'un h&#233;bergeur CFMX (7 ce serait bien...) Voil&#224; ce que j'ai trouv&#233; d'int&#233;re moteur de recherches [ par icole ] Icolebonjour je souhaite cr&#233;er un moteur de recherches pour ma base de donn&#233;es access pouvez vous m 'aider merci bon WE


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,265 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.