1 / 1 / 0
Регистрация: 16.10.2019
Сообщений: 68

Выбор через select по имени компании и в соответствии с этим именем вывод из БД информации о грузе

26.04.2020, 13:45. Показов 3296. Ответов 42

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

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?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>
Добавлено через 20 минут
Если я пытаюсь запустить код, пишет это: Notice: Undefined index: id in C:\xampp\htdocs\dobavgruz\gruzi.php on line 34

Линия 34:
PHP
1
$result = $_GET['id']; // Получаем параметр GET, который передали
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.04.2020, 13:45
Ответы с готовыми решениями:

Выбор select по имени и в соответствии с этим именем вывод из БД значений
В таблице komp лежат данные о компаниях, она связана с таблицей gruz, где лежат данные о грузах по id_komp(в табл. gruz. Нужно, чтобы из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
42
 Аватар для HotReboot
326 / 227 / 92
Регистрация: 22.04.2017
Сообщений: 1,136
26.04.2020, 18:42
Студворк — интернет-сервис помощи студентам
Nord-P, не там
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 <h1>Компания</h1>
        <td>
        <form action="" method="get"> 
<table>
<td>Компания</td>
<td>
    <select name="id">
    <?php
    $sql = $link->query('SELECT `id`, `name` FROM `kompania`');
    while ($result = $sql->fetch_array()) {
        echo "\t\t<option value=\"{$result['id']}\">{$result['name']}</option>\n";
    }?>
    </select>
</td>
<tr>
    <td colspan="4"><input type="submit" value="OK"></td>
</tr>
</table>
</form>
<?php
 
if (!empty($_GET)) {
    $result = $_GET['id'];
    $sql = $link->query("SELECT * FROM `gruz` WHERE `id_komp` = $result");
?>
 
<table style="margin-top: 20px;"  border='1' width="20%" cellpadding="28" cellspacing="0" > 
 
<?php
echo "<tr><th>№</th><th>Упаковка</th><th>Код хранения</th><th>Номер компании</th><th>Вес</th><th>Название</th><th>Объем</th><tr>";
 
while ($row = $sql->fetch_array()) {
    echo "<tr><td>{$row['id']}</td>";
    echo "<td>{$row['id_upac']}</td>";
    echo "<td>{$row['id_hran']}</td>";
    echo "<td>{$row['id_komp']}</td>";
    echo "<td>{$row['ves']}</td>";
    echo "<td>{$row['name']}</td>";
    echo "<td>{$row['razmer']}</td></tr>";
}
echo "</table>";
}
?>
0
1 / 1 / 0
Регистрация: 16.10.2019
Сообщений: 68
26.04.2020, 18:55  [ТС]
так, я кажется бред написала, вот так пробовала, но он ругается на синтаксис.. вроде все так же, как и везде
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
while ($row = mysqli_fetch_assoc($result)) {
  echo '<tr>' . 
 "<td>{$array['id']}</tr>".
  "<td>{$array['id_upac']}</tr>".
 "<td>{$array['id_hran']}</tr>".
 "<td>{$array['id_komp']}</tr>".
  "<td>{$array['ves']}</tr>".
 "<td>{$array['name']}</tr>".
 "<td>{$array['razmer']}</tr>".
 '</tr>';
}
?>
Добавлено через 1 минуту
Спасибо Вам, добрый человек. Я очень благодарна Вам за помощь!
Буду стараться лучше!

Добавлено через 10 минут
Боже, правда, благодарю Вас! Если бы не Вы, ничего бы не получилось. Я очень благодарна!
0
 Аватар для HotReboot
326 / 227 / 92
Регистрация: 22.04.2017
Сообщений: 1,136
26.04.2020, 18:57
Nord-P, На здоровье. Но читайте побольше. Документация вполне понятная.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ответ Создать тему
Опции темы

Новые блоги и статьи
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного. 1. Почему показания термометра заряжены целью? Цель заложена в самом. . .
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ По ссылке 403. Не очень информативно такую ссылку постить. Запись от Usaga размещена Сегодня в 06:46 . . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru