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 :

Lecture sur 2 tables [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de urbalk
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 135
    Points : 71
    Points
    71
    Par défaut Lecture sur 2 tables
    Bonjour,

    J'ai essaie d'apprendre les jointures, celles-ci on l'air de fonctionner par contre quand je veux afficher les résultats des 2 tables, MySql me retourne X fois le nombre d'enregistrement.

    script:
    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
     
    <body>
    <?php
    echo 'affichage avec jointure de 2 tables<br>';
    $db = mysql_connect('localhost', '_', '_');  // connexion à la base 
    mysql_select_db('testliaison',$db);                  // sélection de la base 
     
    // on crée la requête SQL 
    $sql = 'SELECT nom,titre,url FROM infos, site'; 
     
    // on envoie la requête 
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
     
    // on fait une boucle qui va faire un tour pour chaque enregistrement 
    while($data = mysql_fetch_assoc($req)) 
        { 
        // on affiche les informations de l'enregistrement en cours
    	echo '<b>'.$data['nom'].'</b>'; 
     
        echo ''.$data['url'].''.$data['titre'].'';
     
    	echo '<br>';
        } 
    mysql_close($db);  // on ferme la connexion 
    ?>
    </body>
    </html>
    Résultat:
    Code X : 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
    nomurl du sitetitre 1
    nomurl du sitetitre 1
    nomurl du sitetitre 1
    nomurl du sitetitre 1
    nomurl du sitetitre 1
    brunourl du sitetitre 1
    nomurl du sitetitre 1
    nomurl du sitetitre 1
    nomytitre 2
    nomytitre 2
    nomytitre 2
    nomytitre 2
    nomytitre 2
    brunoytitre 2
    nomytitre 2
    nomytitre 2
    nomygggtitre 3
    nomygggtitre 3
    nomygggtitre 3
    nomygggtitre 3

    Je crois que mon pb est dans la boucle while, mais je ne vois pas ou.

    merci de votre aide.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 96
    Points : 72
    Points
    72
    Par défaut
    Salut,

    Dans ton cas tu n'as aucun critère de jointure. Tu fais en gros une multiplication.
    Le problème ne vient pas du while mais de ta requete.

  3. #3
    Membre régulier Avatar de urbalk
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 135
    Points : 71
    Points
    71
    Par défaut
    En effet, pas de criteres de jointure

    je me suis appuyer la dessus

    http://mysql.developpez.com/faq/?page=SYNTAXE_JOINTURES

    ca fonctionne
    merci.

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

Discussions similaires

  1. Monitoring - Nombre d'acces en lecture sur une table
    Par hazou dans le forum Administration et Installation
    Réponses: 3
    Dernier message: 13/11/2012, 15h45
  2. [MySQL] Problème de lecture sur plusieurs tables simultanément
    Par jonathanlafl dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 26/08/2010, 09h15
  3. droits en lecture sur les tables v$
    Par new_angel dans le forum Débuter
    Réponses: 4
    Dernier message: 21/04/2009, 14h51
  4. Réponses: 11
    Dernier message: 28/05/2008, 21h21
  5. Réponses: 2
    Dernier message: 16/05/2006, 14h17

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