Parcours d'un tableau avec foreach
Posté : 23 nov. 2015, 21:02
Bonjour,
Ah, qu'il est dur de s'y remettre quand on n'a pas codé depuis longtemps...
Je souhaite parcourir un tableau que j'ai rempli avec le résultat d'une requête.
Pour une raison qui n'apparaît pas dans l'extrait de code que je vous donne ci-dessous,
je ne peux trier les résultats au moyen d'un ORDER BY dans la requête SQL,
ce qui aurait été tellement plus simple !
Je stocke donc les résultats dans un tableau.
Je trie le tableau.
Et au moment de constituer une liste avec les résultats de ce tableau - à présent ordonné - ça merdoie.
Voyez-vous où j'ai fait une boulette ?
Merci,
Ah, qu'il est dur de s'y remettre quand on n'a pas codé depuis longtemps...
Je souhaite parcourir un tableau que j'ai rempli avec le résultat d'une requête.
Pour une raison qui n'apparaît pas dans l'extrait de code que je vous donne ci-dessous,
je ne peux trier les résultats au moyen d'un ORDER BY dans la requête SQL,
ce qui aurait été tellement plus simple !
Je stocke donc les résultats dans un tableau.
Je trie le tableau.
Et au moment de constituer une liste avec les résultats de ce tableau - à présent ordonné - ça merdoie.
Voyez-vous où j'ai fait une boulette ?
Merci,
<ul>
<?php
$sql = 'SELECT per_id, per_nom, per_prenom
FROM per_personnes';
$res = mysqli_query($dbase, $sql) or die(mysqli_error($dbase));
// Construction d'un tableau pour stocker les résultats
$tab = array('id','identite');
while($ligne=mysqli_fetch_assoc($res))
{ extract($ligne);
$tab['id'][] = $per_id;
$tab['identite'][] = mb_strtoupper($per_nom,'UTF-8').' '.$per_prenom;
}
// Tri du tableau selon le champ 'identite'
asort($tab['identite']);
// vérifications
print_r($tab);
var_dump($tab);
// affichage de la liste ordonnée
foreach($tab as list($id,$identite))
{ echo '<li><a href="fiche-'.$id.'.htm">'.$identite.'</a></li>';
}
?>
</ul>