SoulGodMedlem sedan aug. 20051 200 inlägg Jag har en kod som läser in info från en databas in till ett <select formulär,
men den hämtar bara första "svaret" den hittar, varför, när jag vet att det finns flera i databasen?
Koden är:
<select name="weekemovie">
<?
$query_get_name = "SELECT * FROM * WHERE category='101'";
$get_name = mysql_query($query_get_name) or die(mysql_error());
$row_get_name = mysql_fetch_assoc($get_name);
while($c = mysql_fetch_array($get_name)) {
$totalRows_get_name = mysql_num_rows($get_name);
?>
<option value="<?=$c['id']; ?>"><?=$c['name']; ?></option>
<? } ?>
</select>
MeleaMedlem sedan juli 20033 147 inlägg Ta bort
$row_get_name = mysql_fetch_assoc($get_name);
effataMedlem sedan apr. 2008137 inlägg Vad gör du med $totalRows_get_name, ser inte att den används? Du behöver dessutom inte köra den i varje iteration av loopen.
Sen bör du köra med fetch_assoc istället för fetch_array om du vill komma åt resultatet på formen $c['id'] istället för $c[0].
Så här alltså:
<select name="weekemovie">
<?
$query_get_name = "SELECT * FROM * WHERE category='101'";
$get_name = mysql_query($query_get_name) or die(mysql_error());
$totalRows_get_name = mysql_num_rows($get_name);
while($c = mysql_fetch_assoc($get_name)) {
?>
<option value="<?=$c['id']; ?>"><?=$c['name']; ?></option>
<? } ?>
</select>