Tout d'abord, veuillez arrêter d'utiliser mysql_
fonctions car elles sont obsolète
. Regardez dans mysqli_
ou PDO
. Soyez conscient que votre script est vulnérable à l'injection SQL.
La raison pour laquelle votre script ne fonctionne pas est qu'il semble que vous appelez mysql_fetch_assoc
à deux reprises. Lors de son deuxième appel, il n'y aura aucune sortie si votre requête ne renvoie qu'une seule ligne.
$qry=("SELECT `rank`, `uname` FROM users WHERE `uname` = '$user'");
$result=mysql_query($qry);
$row = mysql_fetch_assoc($result);
$rank = $row['rank'];
Vous devrez soumettre à nouveau une requête (quelque chose comme ci-dessous) et appeler ce résultat séparément pour remplir la liste déroulante, ou stocker le résultat dans un tableau.
$qry=("SELECT `uname` FROM users");
$result=mysql_query($qry);
while ($row = mysql_fetch_assoc($result)) {
echo '<option>' . ucwords($row['uname']) . '</option>';
}