par
Ryle » 03 oct. 2008, 13:57
Tu as plusieurs solutions... soit tu fais une requête par café pour aller chercher les infos des équipes associées :
$result = mysql_query("SELECT * from coordonnees_cafes");
while ($ligne = mysql_fetch_object($result)) {
$id_cafe= $ligne->id_cafe;
...
$rsEquipe = mysql_query("SELECT * FROM equipes WHERE id_cafe=".$id_cafe);
while ($ligneEquipe = mysql_fetch_object($rsEquipe)) {
$id_equipe= $ligneEquipe->id_equipe;
}
}
Le problème, c'est que tu vas faire une requête par café, et le jour où tu as 1000 cafés, tu lances 1000 requêtes... c'est donc pas la solution la plus performante.
Une autre solution consiste à faire une jointure dans ta requête pour croiser les données :
$result = mysql_query("SELECT nom_cafe, adresse, ..., id_equipe, division_equipe, ...
FROM coordonnees_cafes, equipes
WHERE coordonnees_cafes.id_cafe = equipes.id_cafe");
while ($ligne = mysql_fetch_object($result)) {
$nom_cafe= $ligne->nom_cafe;
...
$id_equipe= $ligne->id_equipe;
...
}
Dans ce cas, les informations du café sont répétées pour chaque équipe... à toi de voir si cela te convient, où dans le cas contraire, n'afficher les informations sur le café que lorsqu'elles sont différentes de celles de l'enregistrement précédent (utiliser une variable temporaire pour les stocker)
Tu as plusieurs solutions... soit tu fais une requête par café pour aller chercher les infos des équipes associées :
[php]$result = mysql_query("SELECT * from coordonnees_cafes");
while ($ligne = mysql_fetch_object($result)) {
$id_cafe= $ligne->id_cafe;
...
$rsEquipe = mysql_query("SELECT * FROM equipes WHERE id_cafe=".$id_cafe);
while ($ligneEquipe = mysql_fetch_object($rsEquipe)) {
$id_equipe= $ligneEquipe->id_equipe;
}
}[/php]Le problème, c'est que tu vas faire une requête par café, et le jour où tu as 1000 cafés, tu lances 1000 requêtes... c'est donc pas la solution la plus performante.
Une autre solution consiste à faire une jointure dans ta requête pour croiser les données :
[php]$result = mysql_query("SELECT nom_cafe, adresse, ..., id_equipe, division_equipe, ...
FROM coordonnees_cafes, equipes
WHERE coordonnees_cafes.id_cafe = equipes.id_cafe");
while ($ligne = mysql_fetch_object($result)) {
$nom_cafe= $ligne->nom_cafe;
...
$id_equipe= $ligne->id_equipe;
...
}[/php]Dans ce cas, les informations du café sont répétées pour chaque équipe... à toi de voir si cela te convient, où dans le cas contraire, n'afficher les informations sur le café que lorsqu'elles sont différentes de celles de l'enregistrement précédent (utiliser une variable temporaire pour les stocker)