IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Recherche par mot clés - Php -Mysql


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 130
    Par défaut Recherche par mot clés - Php -Mysql
    Bonjour,

    J'ai crée un site de locations de vacances.
    A ce jour , j'ai plus de 1 000 inscrits.

    J'aimerai mettre en place un syteme de recherche par mot clés sur
    deux champs de ma table: "nomGite" et "descriptifGite"

    Graca a cette recherche, la requete me retournerai tous les enregistrements avec les mots clés recherchés.

    J'espere avoir été clair.

    Merci de votre aide.

    Pod

  2. #2
    Membre éclairé Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Par défaut
    Salut,

    Tu connais le SQL???
    Tu as juste à mettre dans ta requête un LIKE et des % exemple :
    $query="SELECT * FROM MATABLE WHERE nomGite LIKE %".$text."% AND descriptifGite LIKE %".$text."% ";
    ou $text est le mot saisi par l'utilisateur dans un champ.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    746
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 746
    Par défaut
    Bonjour,

    Je me joint à vous car j'ai un problème similaire mais un peu plus complexe je pense.

    Je veux faire la même chose sur un champ, seulement l'utilisateur saisit une expression de cette forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    voiture+moteur banane "salut toi"+bonjour
    Et en fait le + correspond à un ET, l'espace " " correspond à un OU, et le "bla bla" cherche le motif entier dans le champ.
    En gros c'est un peu comme dans les moteurs de recherche.

    Alors j'ai commencé à traiter l'expression avec des explode(), mais le problème c'est que lors du premier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    explode(' ',$expression);
    je me retrouve avec la chaine "salut toi" coupée alors qu'il faudrait qu'elle soit conservée...

    Si quelqu'un a une idée ca serait sympa !

  4. #4
    Membre éclairé Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Par défaut
    Tu ne peut pas essayé de mettre ton explode avec les guillemets et ensuite de travailler sur les espaces?
    Exemple :
    $tab=explode('"',$expression);
    la tu aura un truc du style :
    $tab[0]=moteur+...
    $tab[1]=salut toi;
    $tab[2]=bonjour
    et ensuite tu refait un explode sur chaque objet du tableau avec cette fois ci les espaces

    PS : si tu ve savoir combien ton explode te renvoi d'objet dans ton tableau tu fais un count($tab) et tu aura ce nombre.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    746
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 746
    Par défaut
    non je ne peux pas ca fausse mes conditions car par la suite je dois placer des AND à la place des + mais dans des blocs OR qui sont délimités par les espaces.

    En fait il faudrait un moyen (peut-être les regex?) pour d'abord remplacer les espaces contenus dans un "....." par des _ par exemples, et après j'explode sur les espaces.

    donc d'abord j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    voiture+moteur banane "salut toi"+bonjour
    puis grace au regex ou autre j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    voiture+moteur banane "salut_toi"+bonjour
    et ensuite c'est bon je peux exploder sur les espaces...

    bon si un pro des regex passe par là =)

  6. #6
    Membre éclairé Avatar de crashyear
    Homme Profil pro
    Responsable d’exploitation informatique
    Inscrit en
    Janvier 2006
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Responsable d’exploitation informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 267
    Par défaut
    Salut,

    Tu n'as pas forcement besoin des regex,
    Tu peut faire un explode sur les " et tous les espace qui se trouve dedans tu les transformes en _ et ensuite tu recré ta chaine et tu refait un explode sur les espaces cette fois ci

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Créer un moteur de recherche par mots clés rapide PHP
    Par MaitreTsiang dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 30/11/2009, 09h28
  2. [MySQL] Recherche par mot clés - Php
    Par pod1978 dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 20/09/2006, 12h21
  3. [MySQL] recherche par mots clés
    Par spartan dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 16/02/2006, 16h11
  4. [Tableaux] Moteur de recherche par mot clés
    Par Nee dans le forum Langage
    Réponses: 4
    Dernier message: 20/01/2006, 11h30
  5. Recherche par mots clés
    Par legillou dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 17/06/2005, 10h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo