Я новичок во всем этом, и мне не повезло найти ответы где-либо.
Я пытаюсь создать комбинированный список с 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>
Все, что вам нужно сделать, это включить опцию, когда вы выбираете каждую строку.
Я предлагаю вам добавить 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>
Это создаст выбор с опциями.
Лучшим подходом было бы заполнить его с помощью ajax, поскольку у вас есть намерение манипулировать тегом select.
Это должно быть хорошей отправной точкой для вас
...
<?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