Remplir un tableau associatif dynamiquement [Résolu]

Signaler
Messages postés
9
Date d'inscription
lundi 18 novembre 2013
Statut
Membre
Dernière intervention
20 novembre 2013
-
 laurent1133 -
Bonjour,
Je voudrais savoir comment remplir un tableau associatif dynamiquement.Je vous joint mon code juste en dessous le problème de ce code c'est que cela écrase les donnée précédentes et au final je récupère que la dernière donnée intégré dans le tableau.
$tabversion=array();
query = " SELECT DISTINCT code_gta, nom_type, code_carros, puissfisc, code_alim, type_boite, nb_vitesses, code_classe, code_groupe "
." FROM vehicule "
." WHERE nom_marque = '$marque' "
." AND substring(code_gta,5,1) < '9' "
." AND nom_modele = '$modele' "
." ORDER BY nom_type";


$result = mysql_query($query);
while ($row1 = mysql_fetch_array($result)) {
$tabversion=array($row1[code_gta]=>$row1[nom_type]);}

6 réponses

Messages postés
32277
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 mai 2021
346
Bonjour,
Merci d'utiliser la Coloration Syntaxique lorsque l'on poste du code sur le forum...

COLORATION SYNTAXIQUE TUTO
Messages postés
9
Date d'inscription
lundi 18 novembre 2013
Statut
Membre
Dernière intervention
20 novembre 2013

désolé merci pour ta réactivité voila c'est fait et cela est plus clair j'espère
Messages postés
32277
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 mai 2021
346
Sinon, pour ce qui est du tableau dont tu parles..

$MonTableau = mysql_fetch_array($result) ;


devrait suffire.
Messages postés
9
Date d'inscription
lundi 18 novembre 2013
Statut
Membre
Dernière intervention
20 novembre 2013

Désolé mais je n'ai pas bien saisie?

je voudrais associé a la clé code_gta que je retrouves avec ma requete sql son nom de type ce qui me permettra plus facilement dans un foreach de parcourir et récupérer la clé et sa valeur.
D'où la création du tableau
$tabversion=array();
et dans le mysql_fetch_array récupérer chaque valeur dans mon tableau

while ($row1 = mysql_fetch_array($result)) { $tabversion=array($row1[code_gta]=>$row1[nom_type]);}
Mais comme sa j'écrase les valeurs précédentes d'où le soucis?
Messages postés
9
Date d'inscription
lundi 18 novembre 2013
Statut
Membre
Dernière intervention
20 novembre 2013

Problème résolu désolé du dérangement.
Je les fais autrement voila le code :

while ($row1 = mysql_fetch_array($result)) {
$tabversion[$row1[code_gta]]=$row1[nom_type];}

Comme cela il garde les valeurs déjà stocké.

Je ne pense pas que se soit la meilleur solution, peut etre trouveras tu une fonction native qui te fera la même chose.

http://us3.php.net/manual/fr/function.array-replace.php