Doublons dans la presentation de ma requête SQL ...

Résolu
Bonjour,
Dans mon code je cherche à obtenir une liste présentable qui reprends les entrées de ma table. Mon problème est que toutes les valeurs apparaissent en double alors qu'avec la même requête via Mysql workbench les résultats sont corrects.

$query = mysql_query("SELECT * FROM MaTable");
$i=0;
while($donnees[$i] = mysql_fetch_array($query)){
$i++;
}
$tab_length=$i;

for ($i=0;$i<=$tab_length;$i++){
	echo "<p>";
	echo $i;
	echo " : ";
	foreach ($donnees[$i] as $value){
		echo $value;
		echo " ";
		
	}
	echo "</p>";
}


En gros j'obtiens une réponse du style :
"valeur1" "valeur 1" "valeur2" "valeur2"    "valeur3"

"valeur1b" "valeur 1b" "valeur2b" "valeur2b" "valeur3b"  "valeur3b"


Avec mon code.

Au lieu de,

"valeur1" "valeur2" "valeur3" 
"valeur1b" "valeur2b"  "valeur3b"
-

En faisant directement ma requête dans le GUI Mysql.

J'ai du louper un truc avec foreach je n'avais plus fait de php depuis des siècles et là je sèche ....
Merci d'avance pour votre aide.
--

Voir hyperion puis mourir.....
Gare au Gritche.

2 réponses

  1. salut

    Si mes souvenir sont aps trop poisseux, "mysql_fetch_array" convertit tes résultat . Il faut que tu indique soit le nom de ta colonne soit le numéro.
    En fait disons que tu as ta table :

    T_TABLE 
    id_table
    ch_table


    ta requete
    select id_table,ch_table from table


    retournera 1 ligne par résultat. La fonction "mysql_fetch_array" convertit ce résultat de manière à ce qu'ensuite tu puisse récupérer, par exemple, l'identifiant de deux manières :
     $res = $tab[0]

    ou
     $res = $tab["id_table"]


    Donc ce qu'il faut que tu fasse c'est utiliser "mysql_fetch_row" et non "array" et normalement ca devrait être bon.

    dis moi si c'est ok

    naga
    1. Merci pour ta solution. C'est tout à fait ce que je voulais.
      1. pas de pb.
        Bon aprem.

        naga