Bonjour,
J'ai un souci pour construire un tableau associatif :
J'aimerais arriver à ça :
Les clés (de 1 à 6 ici) correspondent à des index de base de données.Array ( [Access] => Array ( [5] => SP01 [6] => SP02 ) [F1 Team] => Array ( [3] => PSP01 [4] => PSP02 ) [RS] => Array ( [1] => PS01 [2] => PS02 ) )
Voici comment je construis le tableau :
J'ai mis en gras l'endroit où j'insère les id de ma base en tant que clé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 $sql = 'SELECT a.id_proto, a.num_proto, a.id_type, b.label_type FROM prototypes a, types b WHERE a.id_type=b.id_type AND a.id_fam='.$_POST['fam_support'].' ORDER BY label_type,num_proto'; $stmt = $db->query($sql); $tmp_typ = ''; $veh = array(); while ($row = $stmt->fetch()) { if ($row['id_type'] == $tmp_typ) { $array = array($row['id_proto'] => $row['num_proto']); $veh[$row['label_type']] = array_merge($veh[$row['label_type']], $array); $tmp_typ = $row['id_type']; } else { $veh[$row['label_type']] = array($row['id_proto'] => $row['num_proto']); $tmp_typ = $row['id_type']; } } print_r($veh); //TEST !! $template->assign('typ_supp',$_POST['typ_supp']); $template->assign('veh', $veh); $template->display('dt_form_vehsupp_veh.tpl');
Mon problème c'est que le résultat de ce tableau est :
Chaque sous tableau reçoit des clés automatiques, partant de zéro...Array ( [Access] => Array ( [0] => SP01 [1] => SP02 ) [F1 Team] => Array ( [0] => PSP01 [1] => PSP02 ) [RS] => Array ( [0] => PS01 [1] => PS02 ) )
J'ai essayé en rentrant mes index de base comme ceci :
mais mes clés de tableau sont "x" au lieu de x
Code : Sélectionner tout - Visualiser dans une fenêtre à part $array = array('"'.$row['id_proto'].'"' => $row['num_proto']);
Voilà, je sais pas si c'est très clair...
Merci à ceux qui me liront
Partager