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 :

jointure entre 3tables


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de hadjiphp
    Inscrit en
    Décembre 2008
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 155
    Par défaut jointure entre 3tables
    Bonjour,
    j'ai trois tables (titre, terme, document) est qui ont un champs commum (code_doc).
    je voudrai faire un jointure entre ces trois tables.
    j'essai avec se code mais ça marche pas :

    voila le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $selection="SELECT * FROM document,terme, titre
                WHERE document.code_doc=terme.code_doc Or document.code_doc=titre.code_doc AND document.type_offre='$offre' AND ($valeur_requete) group by url ";
                $selection_recherche = mysql_query($selection);
    svp de me répondre.
    Merci d'avance.

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $selection="SELECT * FROM document d,terme te , titre ti
                WHERE d.code_doc=te.code_doc and d.code_doc=ti.code_doc AND d.type_offre='$offre' AND ($valeur_requete) group by url ";
                $selection_recherche = mysql_query($selection);
    comme ca?

    sinon dit nous exactement quel est le but de ta requête

  3. #3
    Membre confirmé Avatar de hadjiphp
    Inscrit en
    Décembre 2008
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 155
    Par défaut
    Bonjour,
    je cherche comment faire une recherche d'un mot parce que quand un utilisateur fait un recherche soit le mot rechercher se trouve dans la table 'terme' soit dans la table 'titre'.

    voila ce code :
    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
     
    <?php
    $mots = explode(" ", $champs11); //séparation des mots reprtésentation sous forme d'un tableau
     
                 $nombre_mots = count ($mots); //compte le nombre de mots
                 $valeur_requete = '';
                 for($nombre_mots_boucle = 0; $nombre_mots_boucle < $nombre_mots; $nombre_mots_boucle++) //tant que le nombre de mots de la recherche est supérieur à celui de la boucle, on continue en augmentant le nombre de mots de 1 à chaque fois
                    {
                      $valeur_requete .= '' . $and_ou_or . ' terme LIKE \'%' . $mots[$nombre_mots_boucle] . '%\''; //modification de la variable $valeur_requete
                    }
                $valeur_requete = ltrim($valeur_requete,$and_ou_or); //suppression de AND ou de OR au début de la boucle
    			$selection="SELECT *
                FROM (document,terme,titre)
                WHERE (document.code_doc=terme.code_doc AND document.code_doc=titre.code_doc) AND document.type_offre='$offre' AND ($valeur_requete) group by url ";
                $selection_recherche = mysql_query($selection); //requête avec le résultat de la boucle dedans
    ?>
    svp a ce qu'il ya qlq peut me répondre parce qu'il reste seulment ça pour que je puisse terminer mon application.
    Merci d'avance.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2008
    Messages : 33
    Par défaut
    impressionnant...

  5. #5
    Membre confirmé Avatar de hadjiphp
    Inscrit en
    Décembre 2008
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 155
    Par défaut
    Bonjour,
    a ce qu'il ya qlq peut me répondre.
    Merci d'avance.

  6. #6
    Membre éclairé Avatar de csharpshooter
    Inscrit en
    Mai 2009
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 98
    Par défaut
    essaye de remplacer l' * dans select * de ta requête par tout les champs ....pour voir, et n'oublie pas de mettre titre.code_doc, terme.code_doc, document.code_doc

Discussions similaires

  1. Jointure entre 3 tables
    Par zigune dans le forum Langage SQL
    Réponses: 9
    Dernier message: 15/11/2004, 16h04
  2. Jointure entre deux tables et résultat
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/06/2004, 14h50
  3. [jointure]requete possible de double jointure entre 2 tables
    Par akira_le_gaucher dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/05/2004, 15h03
  4. Jointure entre 2 tables et OR
    Par PyRoFlo dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/02/2004, 18h42
  5. jointure entre deux requete
    Par Youssef dans le forum Langage SQL
    Réponses: 21
    Dernier message: 15/01/2004, 15h13

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