Выбор select по имени и в соответствии с этим именем вывод из БД значений

В таблице komp лежат данные о компаниях, она связана с таблицей gruz, где лежат данные о грузах по id_komp(в табл. gruz. Нужно, чтобы из таблицы komp была выборка имен компаний и после выбора определенной имени компании из таблицы gruz вытаскивалась информация о всех грузах этой компании. Я пыталась сделать так как-то, но не работает. Подскажите пожалуйста, как это сделать?

<?php
session_start();

include_once("Connection.php");
 ?>

<?php
if (!isset($_SESSION['admin']))
{
  include_once("header.php");
}else{
  include_once("header/header_admin_1.php");
}
 ?>

 <td>Компания</td>
        <td>
            <select name="id">
            <option></option>
            <?php
            $sql = mysqli_query($link, 'SELECT `id`, `name` FROM `kompania`');
            while ($result = mysqli_fetch_array($sql)) {
                echo "\t\t<option value=\"{$result['id']}\">{$result['name']}</option>\n";
            }
        ?>
</td>
<tr>
      <td colspan="4"><input type="submit" value="OK"></td>
    </tr>

 <?php
require_once 'BDconnect.php'; // Подключаем БД из файла

$result = $_GET['id']; // Получаем параметр GET, который передали

// table - название Вашей таблицы
$sql = "SELECT * FROM `gruz` WHERE `id`=$result"; // Ваш запрос в БД(поиск записи по id)

$req = $dbh->prepare($sql);
$req->bindValue(':id', $result, PDO::PARAM_STR); //Данные, которые передаёте в запрос
$req->execute();
$array = $req->fetch(PDO::FETCH_ASSOC); // Возвращаем значение.
?>


<table style="margin-right: 700px; margin-top: 20px;"  border='1' align="right" width="20%" cellpadding="28" cellspacing="0" > 


<?php
if($array) { // Выводим данные
 echo "<td>№ секции <td>{$array['id']}</tr>";
 echo "<td>Название книги <td>{$array['id_upac']}</tr>";
 echo"<td>Автор <td>{$array['id_hran']}</tr>";
 echo "<td>Издание <td>{$array['id_komp']}</tr>";
 echo "<td>Год публикации <td>{$array['ves']}</tr>";
 echo"<td>Жанр <td>{$array['name']}</tr>";
 echo "<td>Количество страниц <td>{$array['rezmer']}</tr>";
}
?>
</table>

Ответы (1 шт):

Автор решения: Ипатьев
$result = $_GET['id']; // Получаем параметр GET, который передали

$sql = "SELECT * FROM `gruz` WHERE id_komp=?";
$req = $dbh->prepare($sql);
$req->bind_param(?, $result);
$req->execute();
$array = $req->get_result()->fetch_all(MYSQI_ASSOC); 

в переменной $array у нас обычный массив который мы перебираем с помощью обычного оператора foreach

→ Ссылка