Onderstaande is een poging om gegevens in een formulier te laten invullen uit een database. De keuzelijst wordt getoond maar bij het verwerken van de gegevens wordt er niets verzonden. De overige gegevens uit keuzelijsten in html worden wel verzonden. Wat doe ik verkeerd?



<?php
$result = mysql_query("select * from users");
if ($result)
{
echo "<select name=\"ae\">";

while ($row = mysql_fetch_array($result))
{
echo "<option>";
print $row["aecode"];
echo "</option>";
}
echo "</select>";
// mysql_free_result($result);
}

?>

Sjaan
Ik denk dat option ook een value moet bevatten, bijv.
<option value="1">abc</option>
<option value="2">def</option>

moet je niet eerst een formulier beginnen? :P
@ Woopie: dat sowieso, maar dat mogen we aannemen, aangezien ze schrijft dat overige keuzelijsten wèl verzonden worden.

<?php
// wat Burdy zei, maar dan in een scriptvoorbeeld:
if (!($result = mysql_query ("select * from users"))) {
trigger_error (mysql_error ());
}
else {
echo '<select id="ae" name="ae">';

while ($row = mysql_fetch_array($result)) {
echo '<option value="' . $row['aecode'] . '">' . $row['aecode'] . '</option>';
}

echo '</select>';
}
?>

edit: haakje toegevoegd :-)
Volgens mij mis je een haakje
Niet dit
if (!($result = mysql_query ("select * from users"))
Maar
if (!($result = mysql_query ("select * from users")))
Bekijk ook eens in je browser de html-code. Dus niet zoals het in je php-script staat, maar echt de html-source. Ziet deze code er wel correct uit? Laat het ook eens valideren op www.w3.org

Reageren