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

PHP & Base de données Discussion :

Moteur de recherche


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé Avatar de Jiraiya42
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    671
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 671
    Par défaut Moteur de recherche
    Bonjour,

    Est-ce que quelqu'un pourrait m'indiquer comment réaliser un moteur de recherche avec par exemple simplement un mot clé svp ? J'ai cherché sur le net et essayé plusieurs solutions mais cela ne marche pas comme je le voudrais, un peu d'aide svp ?

    Merci d'avance...

  2. #2
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 237
    Par défaut
    Un moteur de recherche sur des fichiers ? des messages ? dans une base de données ?

  3. #3
    Membre éclairé Avatar de Jiraiya42
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    671
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 671
    Par défaut
    Citation Envoyé par Tipoun
    Un moteur de recherche sur des fichiers ? des messages ? dans une base de données ?
    Plus sur une base de données oui.

  4. #4
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 237
    Par défaut
    Dans ce cas tu peux directement chercher grâce à la requête sql :
    SELECT * FROM table WHERE nom=blabla
    Il existe de plus les expression régulière en sql ^^

  5. #5
    Membre éclairé Avatar de Jiraiya42
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    671
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 671
    Par défaut
    Citation Envoyé par Tipoun
    Dans ce cas tu peux directement chercher grâce à la requête sql :


    Il existe de plus les expression régulière en sql ^^
    Oui mais la personne qui ne connait pas le nom exact et qui tape une partie du nom par exemple d'un film, ça ne lui sort pas le résultat de la requete tu vois ?

  6. #6
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 237
    Par défaut
    Si avec les expression régulière !!

  7. #7
    Rédacteur
    Avatar de BrYs
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 014
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 014
    Par défaut
    C'est un problème de SQL ...
    il y a le LIKE qui existe !

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Par défaut pour rechercher du texte dans mysql....
    1/ texte exact : SELECT * FROM t WHERE texte = 'texte_cherché'
    2/ approximatif : SELECT * FROM t WHERE texte LIKE '%texte_cherché%'
    3/ moteur de la base : SELECT * FROM t WHERE MATCH(col1) AGAINST 'texte_cherché'

    si la réponse ne convient pas, précise ta question.

  9. #9
    Membre éclairé Avatar de Jiraiya42
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    671
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 671
    Par défaut
    Citation Envoyé par cyrianox
    1/ texte exact : SELECT * FROM t WHERE texte = 'texte_cherché'
    2/ approximatif : SELECT * FROM t WHERE texte LIKE '%texte_cherché%'
    3/ moteur de la base : SELECT * FROM t WHERE MATCH(col1) AGAINST 'texte_cherché'

    si la réponse ne convient pas, précise ta question.
    Par exemple, un film genre Danse avec les loups, la personne ne connait pas le nom exact donc elle tape "danse" ou "loups" et là je voudrais que ça le sélectionne mais avec le sql je vois pas trop comment faire la requete je peux avoir la requete pour cet exemple svp histoire que ce soit un peu moins abstrait svp ?

    Merci d'avance...

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Par défaut si tu connais un peu le sql, c'est facile.
    Citation Envoyé par Jiraiya42
    Par exemple, un film genre Danse avec les loups, la personne ne connait pas le nom exact donc elle tape "danse" ou "loups" et là je voudrais que ça le sélectionne mais avec le sql je vois pas trop comment faire la requete je peux avoir la requete pour cet exemple svp histoire que ce soit un peu moins abstrait svp ?

    Merci d'avance...
    SELECT titre,annee,note FROM films WHERE titre LIKE '%danse%';
    mais je préfère :
    SELECT titre,annee,note FROM films WHERE MATCH(titre) AGAINST('danse');
    Je pense que c'est ce dont tu as besoin. Si ce n'est pas le cas, renseigne toi sur la fonction soundex directement sur le site de mySQL : http://dev.mysql.com/

  11. #11
    Rédacteur
    Avatar de MasterOfChakhaL
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2004
    Messages
    2 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 147
    Par défaut
    Si tu utilises la bdd MySQL, il me semble qu'il existe la fonction SOUNDEX

    qui permet de transformer ton texte en une version phonétique ce qui est très pratique pour absorber la plupart des fautes d'orthographes...

    Attention, cette fonction dépend de la langue utilisée, renseigne toi donc un peu dessus avant de te lancer (je crois que j'avais vu ca sur un tuto de développez.com mais j'ai pas retrouvé là...)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    N'oubliez pas de cliquer sur quand votre question à trouvé une solution.

    Si vous n'avez pas encore lu les règles du club, mieux vaut tard que jamais!

Discussions similaires

  1. [Info]moteur de recherche full text en environnement j2ee
    Par ddams dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 03/11/2004, 19h39
  2. comment faire ma base de donnée pour un moteur de recherche
    Par HoB dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 04/05/2004, 15h07
  3. Moteur de recherche par date
    Par Prue dans le forum ASP
    Réponses: 17
    Dernier message: 27/08/2003, 16h07
  4. [Technique] Index, comment font les moteurs de recherche ?
    Par bat dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 25/10/2002, 15h41

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