[php/mysql] requêtes multi-tables
Fermé
LeGhe
-
28 mai 2009 à 18:09
gaerebut Messages postés 1017 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 22 novembre 2013 - 3 juin 2009 à 03:14
gaerebut Messages postés 1017 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 22 novembre 2013 - 3 juin 2009 à 03:14
A voir également:
- [php/mysql] requêtes multi-tables
- Easy php - Télécharger - Divers Web & Internet
- Tables des matières word - Guide
- Mysql community server - Télécharger - Bases de données
- Retour a la ligne php ✓ - Forum PHP
- Oracle liste des tables ✓ - Forum Oracle
9 réponses
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
28 mai 2009 à 18:17
28 mai 2009 à 18:17
Salut,
Dis moi si ça marche. J'utilise là une jointure pour mettre en relation les 2 tables.
Essaye de la comprendre c'est pas bien dur !
Tiens moi au courant ..
A+
Gaerebut
$reponse = mysql_query("SELECT c.Name as 'name' FROM country c, book b, WHERE b.Country = c.ID") or die(mysql_error()); while ($donnees = mysql_fetch_array($reponse) ) <strong>Pays</strong> : <?php echo $donnees['name']; ?>
Dis moi si ça marche. J'utilise là une jointure pour mettre en relation les 2 tables.
Essaye de la comprendre c'est pas bien dur !
Tiens moi au courant ..
A+
Gaerebut
Merci de ta réponse.
J'ai l'erreur suivante :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE b.Country = c.ID' at line 1
J'ai l'erreur suivante :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE b.Country = c.ID' at line 1
Mon code:
$reponse = mysql_query("SELECT * FROM book") or die(mysql_error());
while ($donnees = mysql_fetch_array($reponse) )
$nom = mysql_query("SELECT c.Name as 'Name' FROM country c, book b, WHERE b.Country = c.ID") or die(mysql_error());
while ($pays = mysql_fetch_array($nom) )
{
?>
<strong><FONT SIZE=3><?php echo $donnees['Title']; ?></font></strong>
<em><strong><font size=2><?php echo $donnees['SubTitle']; ?><br /></font></strong></em>
<strong>Pays</strong> : <?php echo $pays['nom']; ?><br />
<strong>Prix</strong> : <?php echo $donnees['Prix']; ?> euros<br />
<strong>Nombre de pages</strong> : <?php echo $donnees['NrofPages']; ?><br />
<strong>Résumé</strong> : <?php echo $donnees['Plot']; ?> <br />
<center>_____________________________________________</center>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
$reponse = mysql_query("SELECT * FROM book") or die(mysql_error());
while ($donnees = mysql_fetch_array($reponse) )
$nom = mysql_query("SELECT c.Name as 'Name' FROM country c, book b, WHERE b.Country = c.ID") or die(mysql_error());
while ($pays = mysql_fetch_array($nom) )
{
?>
<strong><FONT SIZE=3><?php echo $donnees['Title']; ?></font></strong>
<em><strong><font size=2><?php echo $donnees['SubTitle']; ?><br /></font></strong></em>
<strong>Pays</strong> : <?php echo $pays['nom']; ?><br />
<strong>Prix</strong> : <?php echo $donnees['Prix']; ?> euros<br />
<strong>Nombre de pages</strong> : <?php echo $donnees['NrofPages']; ?><br />
<strong>Résumé</strong> : <?php echo $donnees['Plot']; ?> <br />
<center>_____________________________________________</center>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
28 mai 2009 à 18:34
28 mai 2009 à 18:34
Vérifie bien que la table book contient le champ "Country" et que la table country contient le champ 'ID'.
Quand je dis de bien vérifier, c'est au niveau de la casse (majuscule/minuscule)
Il y a forcément une différence. Change ta requête en fonctions des champs de ta table et ça marchera.
Sinon ... lol
Inverse la condition n_n'
b.Country = c.ID deviendra c.ID = b.Country
A+
Gaerebut
Quand je dis de bien vérifier, c'est au niveau de la casse (majuscule/minuscule)
Il y a forcément une différence. Change ta requête en fonctions des champs de ta table et ça marchera.
Sinon ... lol
Inverse la condition n_n'
b.Country = c.ID deviendra c.ID = b.Country
A+
Gaerebut
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est vérifié : book/Country contient xxx
et country contient ID(=xxx) et Name
et inverser
b.Country = c.ID et c.ID = b.Country
ne change pas l'erreur...
Merci de ton aide!
et country contient ID(=xxx) et Name
et inverser
b.Country = c.ID et c.ID = b.Country
ne change pas l'erreur...
Merci de ton aide!
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
3 juin 2009 à 03:14
3 juin 2009 à 03:14
Salut,
essaye par toi même de trouver si ma méthode ne marche pas !
Perso, elle doit marcher, la solution est pas loin, il doit juste y avoir un petit quelque chose qui fait tout foirer !
Tu vois bien que personne ne te répond, essaye de te documenter sur les "Jointures".
A+
Gaerebut
essaye par toi même de trouver si ma méthode ne marche pas !
Perso, elle doit marcher, la solution est pas loin, il doit juste y avoir un petit quelque chose qui fait tout foirer !
Tu vois bien que personne ne te répond, essaye de te documenter sur les "Jointures".
A+
Gaerebut