0

好的,首先我为这个令人费解且过长的标题道歉,但我对这一切都很陌生,我不太确定如何解释它甚至开始......所以我就这样做了!

我现在正在做的是从我的 MySQL 数据库中填充一个 HTML 下拉列表,然后我想采用用户从下拉列表中选择的任何选项,并以某种方式将该数据输入到另一个表中。

我用来从表中获取数据的代码是:

<td>Model of Bike</td>
<td><select type ="text" name="bikeBrand">
<?php 
    $sql = mysql_query("SELECT bikeDescr, bikeID FROM Bikes");
    while ($row = mysql_fetch_array($sql))
    {
        echo "<option value='bikeDescr'>" . $row['bikeDescr'] . "</option>";
    }
?>

现在,一旦用户选择了所需的自行车,假设它是一辆 Trek,我希望能够获取该信息并将其放入我的 Insert into () Values () 中,以便我可以跟踪他们每次选择了哪辆自行车创建一个新的票证。

希望我没有混淆或使事情变得更糟,但是对于我需要做什么或在哪里寻找的任何帮助将不胜感激。

谢谢你的时间。

4

3 回答 3

1

我建议你做一些改进,它们是:

1)select标签没有type属性,所以正确的使用方法是:

<select name="bikeBrand">

2) 当您在数据库中获取bikeDescr 和bikeID 字段时,我建议您使用bikeID 作为每个选项的值,并使用bikeDescr 来显示选项的名称。例如:

<td>Model of Bike</td>
<td><select name="bikeBrand">

<?php 

    $sql = mysql_query("SELECT bikeDescr, bikeID FROM Bikes");

    while ($row = mysql_fetch_array($sql))
    {
        echo "<option value='" . $row['bikeID'] . "'>" . $row['bikeDescr'] . "</option>";
    }
?>

因此,您可以在下一个文件中检索 bikeBrand 值并将其插入数据库中。

于 2012-07-07T04:11:36.137 回答
0

您必须更改语句:

echo "<option value='bikeDescr'>" . $row['bikeDescr'] . "</option>";

对此:

echo "<option value='" . htmlentities($row['bikeDescr']) . '>" . $row['bikeDescr'] . "</option>";

这一切都应该在一个表格内。至于INSERT查询,您是想在同一页面上调用它,还是在单击按钮或提交表单后调用它?

于 2012-07-07T04:03:14.767 回答
0

要获得值,您可以在表单上作为另一个 php 文件执行操作,所以

<form action="submit.php" method="POST">
<td><select name="bikeBrand">
<?php 
    $sql = mysql_query("SELECT bikeDescr, bikeID FROM Bikes");
    while ($row = mysql_fetch_array($sql))
    {
        echo "<option value='". $row['bikeDescr'] ."'>" . $row['bikeDescr'] . "</option>";
    }
?>
</form>

submit.php 看起来像

$value = $_POST['bikeBrand']
if(isset($value)){
// Database info goes here//
$sql = mysql_query("INSERT INTO table VALUES('$value')");
}
于 2012-07-07T04:07:14.357 回答