Bonjour à vous tous,
Considérons le script PHP suivant permettant de récupérer les données dans une table PHPMyAdmin :
Je ne comprends pas bien l'utilité d'ajouter une seconde boucle dans la première boucle, surtout que la première récupérait déjà les données de la table et les affichait. Mes cours parlent d'optimisation du code dans le sens où on créé un nouveau tableau de données avec $villes dont la portée globale permettra son utilisation après la boucle while. C'est du chinois pour moi, quelqu'un saurait m'expliquer plus clairement ?
Et pourquoi le résultat est le suivant avec la répétition des listes ?
Merci pour votre aide.
Modifié par ObiJuanKenobi (21 May 2022 - 16:45)
Considérons le script PHP suivant permettant de récupérer les données dans une table PHPMyAdmin :
<?php
$mysqli = new mysqli('localhost', 'root', '', 'projet_modeles');
$result = $mysqli->query('SELECT ville_id, ville_nom FROM villes');
while($row = $result->fetch_array()){
$villes[$row['ville_id']] = $row['ville_nom'];
echo '<ul>';
foreach($villes as $id => $ville){
echo '<li>' . $id . ' - ' . $ville . '</li>';
}
echo '</ul>';
}
$result->free();
$mysqli->close();
?>
Je ne comprends pas bien l'utilité d'ajouter une seconde boucle dans la première boucle, surtout que la première récupérait déjà les données de la table et les affichait. Mes cours parlent d'optimisation du code dans le sens où on créé un nouveau tableau de données avec $villes dont la portée globale permettra son utilisation après la boucle while. C'est du chinois pour moi, quelqu'un saurait m'expliquer plus clairement ?
Et pourquoi le résultat est le suivant avec la répétition des listes ?
Merci pour votre aide.
Modifié par ObiJuanKenobi (21 May 2022 - 16:45)