Je suis confus ici.php mysql sélectionner une liste déroulante sélectionnée et distincte
$sql_n = mysql_query("SELECT * FROM table1 WHERE n='{$row['n']}'");
$row_n = mysql_fetch_array($sql_n);
$sql= mysql_query("SELECT DISTINCT p FROM table1");
while($row = mysql_fetch_array($sql)) {
if($row['p'] == $row_n['p']) {
$selected = " selected";
}
$np .= "<option value='{$row['p']}'$selected>{$row['p']}</option>";
}
Quand j'utilise requête SELECT DISTINCT p
, $selected
ne fonctionne pas, si j'utilise SELECT p
. Son fonctionnement, aucune idée pourquoi?
D'où vient le '$ row ['n']' dans la première requête? Est-ce que tout cela fait partie d'une autre boucle? Si c'est le cas, vous écrasez la variable '$ row'. – Alec
'$ selected' ne fonctionnera pas correctement en dehors des problèmes de requête. Dès que vous avez 1 match, tous les suivants seront marqués comme "sélectionnés". Aussi, '$ selected' devrait être' "selected = 'selected'" ' –
thetaiko
Essayez un print_r ($ row) pour voir ce qu'il y a dans chaque ligne de la base de données. – Mike42