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 sur plusieurs tables


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2003
    Messages : 408
    Par défaut Moteur de recherche sur plusieurs tables
    Bonsoir,

    Voilà je souhaite mettre en place sur mon site un moteur de recherche mais je ne sais pas trop comment m'y prendre car celui ci doit pouvoir cherche sur 3 tables
    voici la structure des mes tables
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
     
    CREATE TABLE comparateur_marque (
      id_marque int(10) NOT NULL auto_increment,
      nom varchar(50) NOT NULL,
      adresse1 varchar(100) NOT NULL,
      adresse2 varchar(100) NOT NULL,
      cp varchar(7) NOT NULL,
      ville varchar(50) NOT NULL,
      pays varchar(50) NOT NULL,
      tel varchar(20) NOT NULL,
      fax varchar(20) NOT NULL,
      email varchar(50) NOT NULL,
      web varchar(50) NOT NULL,
      logo varchar(200) NOT NULL,
      PRIMARY KEY  (id_marque),
      KEY nom (nom)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1;
     
     
    CREATE TABLE comparateur_type (
      id_type int(5) NOT NULL auto_increment,
      `type` varchar(50) NOT NULL,
      image varchar(100) NOT NULL,
      parent int(3) NOT NULL default '0',
      PRIMARY KEY  (id_type)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1;
     
     
    CREATE TABLE comparateur_velo (
      id_velo int(5) NOT NULL auto_increment,
      id_marque int(10) NOT NULL,
      id_type int(10) NOT NULL,
      modele varchar(100) NOT NULL,
      ref varchar(100) NOT NULL,
      cadre varchar(250) NOT NULL,
      amortisseur varchar(250) NOT NULL,
      fourche varchar(250) NOT NULL,
      direction varchar(250) NOT NULL,
      boitier varchar(250) NOT NULL,
      pedalier varchar(250) NOT NULL,
      pedale varchar(250) NOT NULL,
      potence varchar(250) NOT NULL,
      tige_selle varchar(250) NOT NULL,
      cintre varchar(250) NOT NULL,
      der_av varchar(250) NOT NULL,
      der_ar varchar(250) NOT NULL,
      frein varchar(250) NOT NULL,
      manette varchar(250) NOT NULL,
      selle varchar(250) NOT NULL,
      roue varchar(250) NOT NULL,
      cassette varchar(250) NOT NULL,
      pneu varchar(250) NOT NULL,
      chaine varchar(250) NOT NULL,
      poids float(3,2) NOT NULL,
      taille varchar(250) NOT NULL,
      technologie text NOT NULL,
      description text NOT NULL,
      prix float(9,2) NOT NULL,
      photo varchar(200) NOT NULL,
      annee year(4) NOT NULL,
      date_ajout datetime NOT NULL,
      date_modif datetime NOT NULL,
      afficher tinyint(1) NOT NULL,
      geometrie varchar(200) NOT NULL,
      moyeux varchar(250) NOT NULL,
      rayon varchar(250) NOT NULL,
      levier_frein varchar(250) NOT NULL,
      PRIMARY KEY  (id_velo),
      KEY id_marque (id_marque,id_type,prix,photo,afficher)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1;
    en fait si je recherche juste dans la tablea comparateur_velo pas de soucis mais si une personne ajout la marque devant je suis bloqué car la marque est stocké dans l'autre table comparateur_marque, de même pour le type.

    Exemple : si une personne tape "rockrider" pas de soucis je vais trouver dans ma table comparateur_velo
    mais s'il tape "vtt decathlon rockrider" je ne vais rien trouver car "vtt" est dans la table comparateur_type et "decathlon" dans comparateur_marque

    il doit forcement y avoir une astuce mais personnelement je ne sais pas faire

    merci d'avance pour votre aide et bon réveillon à tous

    Ludo

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Il faut utiliser les jointures !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

Discussions similaires

  1. [MySQL] moteur de recherche sur plusieur table php mysql
    Par chrisl46 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 19/04/2014, 18h33
  2. moteur de recherche sur plusieurs table liees
    Par oliv3400 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 21/02/2012, 12h30
  3. [MySQL] moteur de recherche sur plusieurs tables
    Par harlock59 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 10/04/2007, 15h23
  4. [MySQL] Moteur de recherche sur plusieurs pages
    Par DonKnacki dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 30/01/2007, 14h47
  5. [MySQL] Recherche sur plusieurs tables
    Par hubidev dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 21/03/2006, 10h42

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