J'ai essayé d'inverser l'orientation du tableau.
Cela me paraît en effet plus logique et
Calimero m'avait également précédemment conseillé de le faire.
Le hic, c'est que j'effectue un tri de ce tableau sur la "colonne"
$tab['nom']
Je ne l'ai pas inclus dans l'extrait de code communiqué ci-dessus.
Vioc la version complétée.
$tab = array();
$sql = "SELECT membre_id, membre_nom, membre_age
FROM membres
WHERE membre_actif = 1";
$res = mysqli_query($dbase, $sql) or die(mysqli_error($dbase));
while($ligne=mysqli_fetch_assoc($res))
{ extract($ligne);
$tab['nom'][$membre_id] = $membre_nom;
$tab['age'][$membre_id] = $membre_age;
}
uasort($tab['nom'], 'compare_sansaccent');
var_dump($tab); // JUSQU'ICI, TOUT VA BIEN
foreach($tab as $key=>$val)
{ echo '<li>membre n°'.$key.' - nom : '.$val['nom'].' - âge : '.$val['age'].'</li>'; // LÀ, J'AI UN "UNDEFINED INDEX"
}
Si je construis mon tableau ainsi :
$tab[$membre_id]['nom'] = $membre_nom;
$tab[$membre_id]['age'] = $membre_age;
le tri sur le nom ne fonctionne plus.
J'ai essayé d'inverser l'orientation du tableau.
Cela me paraît en effet plus logique et [b]Calimero [/b]m'avait également précédemment conseillé de le faire.
Le hic, c'est que j'effectue un tri de ce tableau sur la "colonne" [b]$tab['nom'][/b]
Je ne l'ai pas inclus dans l'extrait de code communiqué ci-dessus.
Vioc la version complétée.
[php]$tab = array();
$sql = "SELECT membre_id, membre_nom, membre_age
FROM membres
WHERE membre_actif = 1";
$res = mysqli_query($dbase, $sql) or die(mysqli_error($dbase));
while($ligne=mysqli_fetch_assoc($res))
{ extract($ligne);
$tab['nom'][$membre_id] = $membre_nom;
$tab['age'][$membre_id] = $membre_age;
}
uasort($tab['nom'], 'compare_sansaccent');
var_dump($tab); // JUSQU'ICI, TOUT VA BIEN
foreach($tab as $key=>$val)
{ echo '<li>membre n°'.$key.' - nom : '.$val['nom'].' - âge : '.$val['age'].'</li>'; // LÀ, J'AI UN "UNDEFINED INDEX"
}[/php]
Si je construis mon tableau ainsi :
[php]$tab[$membre_id]['nom'] = $membre_nom;
$tab[$membre_id]['age'] = $membre_age;[/php]le tri sur le nom ne fonctionne plus.