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 :

[Conception] recherche par mot clé genre amazon


Sujet :

PHP & Base de données

Vue hybride

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 184
    Par défaut [Conception] recherche par mot clé genre amazon
    Bonjour,

    Soient 2 tables relationnelles : chanteurs + albums

    Je souhaite faire une fonction "rechercher par mot clé" comme sur le site d'amazone, mais pour ne pas réinventer la roue, je me demandais si l'un de vous avait déjà développé dans les grandes lignes cette application, ou si vous connaissiez un code bon code open source à cet effet.

    Merci

  2. #2
    Membre éclairé Avatar de LinuxUser
    Inscrit en
    Avril 2007
    Messages
    857
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 857
    Par défaut
    Rechercher où ?
    Base de données ?

  3. #3
    Membre émérite Avatar de sharrascript
    Homme Profil pro
    Développeur Web indépendant
    Inscrit en
    Avril 2007
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web indépendant

    Informations forums :
    Inscription : Avril 2007
    Messages : 678
    Par défaut
    bonjour,

    C'est possible avec une requete du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $req = "SELECT *
    FROM chanteurs, albums
    WHERE champ LIKE '%$mot%'";
    ++

  4. #4
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Je pense qu'il veut plutôt parler d'un système de tags si je me trompe pas.

    Un truc facile à faire,

    table TAG(id_kw,nom)
    table APPARTENIR(id_kw,id_element)

    id_element correspondant à l'id d'un chanteur ou d'un album.

    Ensuite tu pourras facilment grouper les éléments par tags. Il va falloir mettre un tas de tags différents pour que la recherche soit pertinente.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 184
    Par défaut
    Merci à tous,

    Peux tu m'en dire un peu plus stp sur le système de tags Thomas R?

  6. #6
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Imaginons, dans notre site internet nous avons une multitude d'articles, il y a des articles sciences, informatique, politique, buisiness, sport etc.

    Quand je suis dans la page d'un article j'aimerais savoir quelles sont les autres articles qui ont un rapport avec.

    Dans ma base de données j'ai une table TAGS qui contient une multitude de tags :
    football, basket, tennis, carte mère, jeux vidéos, consoles de jeux, nicolas sarkozy, microsoft, etc.

    Dans la table APPARTENIR on a l'association entre un article et un tag. Un article peut être associé à une multitude de tags.

    Donc lorsque je voudrais afficher les articles en rapport avec celui que je suis en train de lire.

    Il faudra aller chercher :

    SELECT * FROM APPARTENIR WHERE APPARTENIR.id=TAGS.id AND APPARTENIR.id_article=ARTICLE.id_article AND nom_tag='truc' OR nom_tag='autre_truc'...

    On va chercher tous les articles qui auront des tags similaires à celui sur lequel je suis.

    Lors de l'ajout d'un article, l'éditeur devra avoir la possibilité de cocher les tags auxquels l'article qu'il saisit est associé.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 184
    Par défaut
    Merci ThomasR j'étudierai çaà l'occasion.

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

Discussions similaires

  1. [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
  2. [Tableaux] Moteur de recherche par mot clés
    Par Nee dans le forum Langage
    Réponses: 4
    Dernier message: 20/01/2006, 11h30
  3. [Base de documents] Upload et Recherche par mots clé
    Par yascov dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 30/12/2005, 18h59
  4. recherche par mot clé
    Par seb59dk dans le forum Access
    Réponses: 3
    Dernier message: 06/09/2005, 14h26
  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