Je sollicite une nouvelle fois votre aide.
Je récupère les mots contenus dans le champ etiquettes de la table articles et je compte les occurences de chaque mot pour réaliser un nuage de tags. J'ai écrit le script suivant:
Code : Tout sélectionner
<?php
require 'admin/includes/connexion.php';
$nuage="";
$sql = mysql_query('SELECT etiquettes FROM articles') or die();
while ($rang = mysql_fetch_assoc($sql)) {
$nuage=$nuage.",".$rang['etiquettes'];
}
$nuage=substr($nuage, 1);
$nuage = explode(',',$nuage); // découper la chaîne par rapport aux virgules avec explode()
$nuage_compteur=array(); // préparer un tableau vide pour mettre les compteurs
foreach($nuage as $etiquette) {
$etiquette=trim($etiquette);
if (isSet($nuage_compteur[$etiquette])) // si déjà défini on incrémente
$nuage_compteur[$etiquette]++;
else // sinon on initialise
$nuage_compteur[$etiquette] = 1;
}
foreach($nuage_compteur as $etiquette=>$nombre) {
echo "<li> $nombre $etiquette</li>";
}
echo "</ul>";
?>
2 posset
2 ullum
1 quoque
...
Je voudrais afficher les étiquettes par ordre alphabétique. J'ai essayé la fonction asort() mais soit j'obtiens un message d'erreur, soit je classe le tableau sur le nombre d'étiquettes et non sur les étiquettes elles-même. Autrement dit comment peut-on classer un tableau sur la deuxième colonne.
Cordialement