从mysql数据库使用下拉框时,显示一行中的多个值

我正在尝试在选择下拉列表中的项目时显示行中的特定项目。 为了澄清,假设我在下拉菜单中选择了item1 ,并且当选择item1时,我想要在页面上的另一个字段中显示item1价格。

PS。 我正在尝试制作一个连接到MYSQL数据库的库存和订购表单。

提前致谢。

这是我的PHP代码。

  <?php function dropdown( $alcohol, array $options, $selected=null ) { /*** begin the select ***/ $dropdown = ''."\n"; $selected = $selected; /*** loop over the options ***/ foreach( $options as $key=>$option ) { /*** assign a selected value ***/ $select = $selected==$key ? ' selected' : null; /*** add each option to the dropdown ***/ $dropdown .= ''.$option.''."\n"; } /*** close the select ***/ $dropdown .= ''."\n"; /*** and return the completed dropdown ***/ return $dropdown; } ?> 
<?php mysql_connect('localhost', 'root', ''); mysql_select_db(''); $sql = "SELECT alcohol FROM alcohol "; $result = mysql_query($sql); echo ""; while ($row = mysql_fetch_array($result)) { echo "" . $row['alcohol'] . ""; } echo ""; ?>

//这个以下的新东西//

 
--- Select Alcohol --- <?php mysql_connect('localhost', 'root', ''); mysql_select_db(''); $sql = "SELECT alcohol FROM alcohol"; $result1 = mysql_query($sql); while ($row = mysql_fetch_array($result1)) { echo "" . $row['alcohol'] . ""; } $dropdown1 = empty($_POST['alcohol'])? die ("ERROR: Select from dropdown") : mysql_escape_string($_POST['alcohol']); echo ""; ?> <?php while ($row = mysql_fetch_array($result)) { echo ""; } } ?>
alcohol price amount in stock
".$row['alcohol']."".$row['price']."".$row['quantity_in_stock']."

首先,使用mysqli。 不推荐使用Mysql_ *,将来的版本将删除它。

现在我们已经完成了这个,我会在原始下拉选择值中添加一个“标记”字符以获取值。 选择一个通常不在您的数据库中的Unicode字符,并在值中回显它,使其如下所示:

  

然后在上面的代码中,将值拆分为@字符并选出其后面的内容以获取次要值。 从长远来看,这应该可以节省数据库操作。

祝好运!