选项选择后填写表格

时间:2016-04-20 15:15:58

标签: php ajax

我有一个从数据库自动填充的产品列表,我想获取与所选产品相对应的数据并填写表格。

<form name='login' action='<?php echo ($_SERVER['PHP_SELF']); ?>' method='post' enctype="multipart/form-data">
<?php
$sql = "SELECT product_name FROM products ORDER BY product_name";
$result = $mysqli->query($sql);

if ($result->num_rows > 0) {
echo "<select>";
// output data of each row
while($row = $result->fetch_assoc()) {
    echo "<option>" . $row["product_name"]."</option>";
}
echo "</select>";
} else {
echo "0 results";
}
$mysqli->close();
?>
<input type="text" name="product_code" placeholder="Product Code" />
<input type="text" name="product_name" placeholder="Product Name" />
<input type="text" name="product_price" placeholder="Price" />
<input type="file" name="fileToUpload" accept="image/*">
<textarea rows="8" name="product_desc_de" placeholder="Deutsch description"></textarea>
<textarea rows="8" name="product_desc_en" placeholder="English description"></textarea>
<textarea rows="8" name="product_desc_es" placeholder="Spanich description"></textarea>
<button type="submit" class="btn btn-default">Submit</button>
</form>

我知道应该以某种方式使用AJAX

1 个答案:

答案 0 :(得分:1)

您没有显示任何AJAX代码,因此我认为这只是一个错误。

您不需要使用Ajax来创建表单。

首先,为您的<select>标记命名

echo '<select name="prods">';

然后您的<option>标记了一个值

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

现在,当你查看$ _POST数组时,你会得到一个$ _POST [&#39; prods&#39;]

我个人会将id字段添加到SELECT

$sql = "SELECT id, product_name FROM products ORDER BY product_name";

并使用id作为此值

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