Как добавить значения в зависимый раскрывающийся список в PHP? - PullRequest
0 голосов
/ 03 мая 2018

В моей базе данных есть два столбца: faculty и department. Мне удалось связать данные с раскрывающимся списком, содержащим мой faculties. Но для department, который имеет от foreign key до faculty, как добавить новый и отобразить его в раскрывающемся списке?

По сути, мне нужно, чтобы при выборе faculty из первого раскрывающегося списка departments для этого конкретного faculty будет отображаться во втором раскрывающемся списке, и я могу добавить другой отдел к выбранному факультет, если я хочу. Как я могу достичь этого?

<?php
require('config.php');
include('auth.php');
$query = "SELECT name, faculty_id FROM faculty ORDER BY name ASC";
$result = mysqli_query($con, $query);
?>

<!DOCTYPE html>
<html>
<head></head>
<body>
<a href="/admin/"><< Go back</a>
<br><br>
<form action="/admin/departments/" method="post">
    <select name="faculties">
        <?php
        while ($row = mysqli_fetch_array($result)) {
            echo "<option value='" . $row['faculty_id'] . "'>" . $row['name'] . "</option>";
        }
        ?>
    </select>
</form>

<?php
if (isset($_POST['save_department'])) {
    $sql = "INSERT INTO department (name) VALUES ('" . $_POST["department_name"] . "')";

    $result = mysqli_query($con, $sql);
}
$query = "SELECT name, faculty_id, department_ID FROM department ORDER BY name ASC";
$result = mysqli_query($con, $query);
?>
<br><br>
<form action="/admin/departments/" method="post">
    <select name="departments">
        <?php
        while ($row = mysqli_fetch_array($result)) {
            echo "<option value='" . $row['department_ID'] . "'>" . $row['name'] . "</option>";
        }
        ?>
    </select>
</form>
<br>
<form method="POST" action="">
    <input name="department_name" type="text" required="required"><br>
    <br>
    <button type="submit" name="save_department">Add Department</button>
</form>
</body>
</html>

1 Ответ

0 голосов
/ 03 мая 2018

Пожалуйста, еще с условием if или сделайте запрос динамически как:

 $query = '';
    if (isset($_POST['save_department'])) {
   $query = "INSERT INTO department (name) VALUES ('" . 
   $_POST["department_name"] . "')";

    }else{
        $query = "SELECT name, faculty_id, department_ID FROM department ORDER BY name ASC";

        }

    $result = mysqli_query($con, $query);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...