我是这一切的新手,我没有运气在任何地方找到答案。 我正在尝试用PDO创建一个组合框,但我无法让它正常工作。我的结果显示了数组和数组中的所有内容。
我想要展示的是一个组合框中的equipment_model,如果可能的话,根据该选择,在其右边的一个字段中显示与该模型相关的价格。
如果需要更多信息,请通知我。我又是新手,想要学习。
<form>
<fieldset>
<legend>Selecting elements</legend>
<p>
<label>Furnace</label>
<select name="Equipment1" id = "Equipment1">
<option id="1">
<?PHP
require_once 'php/func_inc.php';
$odb=new PDO('mysql:host=localhost;dbname=proposal_site', 'root', '');
$query = "select equipment_model from equipment_master";
$data = $odb->prepare($query); // Prepare query for execution
$data->execute();// Execute (run) the query
$row=$data->fetchAll(PDO::FETCH_ASSOC);
print_r($row);
?>
</option>
</select>
</fieldset>
</form>
答案 0 :(得分:1)
您需要做的就是在获取每一行时回显该选项。
我建议您在查询中添加equipment_id
:
select equipment_id, equipment_model from equipment_master
并将其打印在循环中:
<select name="Equipment1" id = "Equipment1">
<?php
require_once 'php/func_inc.php';
$odb=new PDO('mysql:host=localhost;dbname=proposal_site', 'root', '');
$query = "select equipment_id, equipment_model from equipment_master";
$data = $odb->prepare($query); // Prepare query for execution
$data->execute();// Execute (run) the query
while($row=$data->fetch(PDO::FETCH_ASSOC)){
echo '<option value="'.$row['equipment_id'].'">'.$row['equipment_model'].'</option>';
//print_r($row);
}
?>
</select>
这将使用选项构建select。
更好的方法是使用ajax填充它,因为你有意操纵select标签。
答案 1 :(得分:-4)
这应该是一个很好的起点
...
<?PHP
require_once 'php/func_inc.php';
$odb=new PDO('mysql:host=localhost;dbname=proposal_site', 'root', '');
$query = "select equipment_model from equipment_master";
$data = $odb->prepare($query); // Prepare query for execution
$data->execute();// Execute (run) the query
while ($row = $data->fetchAll(PDO::FETCH_ASSOC)) {
echo '<option value="'.$row['equipment_model'].'">'.$row['equipment_model'].'</option>';
}
...
您应该考虑使用PHP框架