[RESOLU] Transformer résultat SQL vers un array()

Eléphant du PHP | 150 Messages

18 juil. 2019, 09:38

bonjour,
je souhaite récupérer un champ de ma base et le convertir en :
array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 etc.. );
j'ai fait :
$tableau = array();
$resultat_numero_de_semaine= mysqli_query($db, $requette_numero_de_semaine);
while ($ligne = mysqli_fetch_array($resultat_numero_de_semaine)){ 
 
$tableau[] = $ligne['content'];
}
mais le resultat qui en sort est :
Array ( [0] => [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] => [27] => [28] => [29] => [30] => [31] => [32] => [33] => [34] => [35] => )
le but est d'utiliser ce tableau avec un foreach

Avatar du membre
Mammouth du PHP | 1609 Messages

18 juil. 2019, 10:56

Salut, à priori $ligne['content'] est vide pour les 36 lignes. Tu devrais faire un print_r ou var_dump de $ligne à chaque passage dans le while pour vérifier son contenu et corriger le code.

Tu pourrais aussi tester un mysqli_fetch_all pour récupérer tout le jeu de résultats sans faire de boucle.
https://www.php.net/manual/fr/mysqli-re ... ch-all.php
Développeur web depuis + de 20 ans

Eléphant du PHP | 150 Messages

18 juil. 2019, 14:38

trouvé !!!
$tableau = array();
	$resultat_numero_de_semaine= query($requette_numero_de_semaine);
	while ($ligne = fetch_array($resultat_numero_de_semaine)){ 
        $tableau[] = $ligne[0];
	} 
merci pour votre aide