Requête sur 2 tables

Eléphanteau du PHP | 28 Messages

02 oct. 2008, 09:46

Bonjour,
Voici ma première table :

Table 'equipes' :
id_equipe
division_equipe
groupe_equipe
nom_equipe
id_cafe (reprend id_cafe de la seconde table)

La seconde table :

Table 'coordonnees_cafes' :
id_cafe
nom_cafe
adresse
cp
ville
telephone

J'aimerais afficher pour chaque équipe, la ligne suivante :
$nom_equipe ($division_equipe $groupe_equipe) - $nom_cafe

La difficulté que je rencontre est que je n'arrive pas à formuler la requête nécessaire à afficher ceci (surtout pour afficher le nom du café de la seconde table en fonction des équipes de la première table).

Pouvez vous m'aider svp ?
Merci d'avance
----------------------
Domi

Mammouth du PHP | 1353 Messages

02 oct. 2008, 09:59

Bonjour,

Tu peux sélectionner des valeurs dans plusieurs tables en précisant les tables lors du choix des valeurs :

exemple :

Code : Tout sélectionner

SELECT equipes.nom_equipe, coordonnes_cafes.nom_cafe FROM equipes,coordonnees_cafes WHERE equipes.id_cafe=coordonnees_cafe.id_cafe
Je pense que cela peut suffire pour ce que tu veux faire, sinon il faudra regarder du coté des jointures (LEFT JOIN ou RIGHT JOIN)
Tell me and I forget. Teach me and I remember. Involve me and I learn.

Eléphanteau du PHP | 28 Messages

02 oct. 2008, 10:44

Voici ce que j'ai fais :
$result = mysql_query("SELECT id_equipe, division_equipe, groupe_equipe, nom_equipe, nom_cafe FROM equipes
LEFT JOIN coordonnees_cafes ON equipes.id_cafe=coordonnees_cafes.id_cafe
where nom_equipe <>'exempt' order by nom_equipe asc") or die(mysql_error());
while($ligne = mysql_fetch_object($result))
{
$id_equipe = $ligne->id_equipe;
$division_equipe = $ligne->division_equipe;
$groupe_equipe = $ligne->groupe_equipe;
$nom_equipe = $ligne->nom_equipe;
$id_cafe = $ligne->id_cafe;
$nom_cafe = $ligne->nom_cafe;
echo "<tr><td><a href=\"rattachement.php?id_equipe=$id_equipe\">Modifier</a></td>
<td>$nom_equipe ($division_equipe $groupe_equipe)</td>
<td>";
if ($id_cafe=="0") { echo "Hors Asso"; } else { echo $nom_cafe; }
echo "</td></tr>";
}
Tout fonctionne ou presque...
En fait, les cafés s'affichent bien quand id_cafe est diff de 0.
Par contre quand id_cafe=0, "hors asso' ne s'affiche pas, pourquoi ?
----------------------
Domi