我想在下拉列表中进行选择时存储表中的所有行值(可能在数组中?),这样我就可以通过列名从选择的行中检索任何值。
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label for="select"><select name="id" value="Select" size="1" onChange="this.form.submit()">
<?php
$sql = "SELECT * FROM matningar WHERE matningstyp ='odb'";
$result = mysql_query($sql) or die (mysql_error());
while ($row = mysql_fetch_array($result))
{
$namn=$row["namn"];
$foretag=$row["foretag"];
$options.="<OPTION VALUE=\"$foretag\">".$namn;
}
?>
<option>
<? echo $options ?>
</option>
</select>
</form>
答案 0 :(得分:0)
再次检查你的代码,我认为你犯了一些错误。
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label for="select">
<select name="id">
<?php
$sql = "SELECT * FROM matningar WHERE matningstyp ='odb'";
$result = mysql_query($sql) or die (mysql_error());
while ($row = mysql_fetch_array($result)) {
echo "<option value='".$row['foretag']."'>".$row['namn']."</option>";
}
?>
</select>
</form>
它更短更高效。
答案 1 :(得分:0)
您的代码应如下所示
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label for="your_select"><select id="your_select" name="id" onChange="this.form.submit()">
<?php
$sql = "SELECT * FROM matningar WHERE matningstyp ='odb'";
$result = mysql_query($sql) or die (mysql_error());
while ($row = mysql_fetch_array($result))
{
$namn=$row["namn"];
$foretag=$row["foretag"];
$options.="<OPTION VALUE=\"$foretag\">".$namn.'</option>';
}
?>
<? echo $options ?>
</select>
</form>