Заполнение двух тегов select в PHP из MySQL и отмена записи, выбранной в первом теге

Я студент, работающий над приложением php. Я в основном заполняю два тега выбора, которые заполняются из MySQL, используя следующий код

У меня есть еще один тег выбора, который касается места прибытия.

Вот изображение:

Икс

Проблема, с которой я сталкиваюсь, заключается в том, что я не хочу, чтобы запись, выбранная в первом теге выбора, отображалась во втором теге выбора, поскольку это путешествие между двумя местоположениями.
Я понятия не имею, с чего начать, было бы очень полезно, если бы кто-то мог указать мне правильное направление.

<?php
// perform database query
$query = "SELECT id, municipality FROM airports";

$result = mysqli_query($connection, $query);

if(!$result){
die("Database query failed.");
}
// only for syntax errors
// Select query for arrival
echo "<select name='arrival'>";
while($row = mysqli_fetch_assoc($result)){
unset($id, $name);
$id = $row['id'];
$name = $row['municipality'];
echo '<option value="'.$name.'">'.$name.'</option>';
}
echo "</select>";
// release returned data
mysqli_free_result($result);
?>

0

Решение

Если бы я был тобой, я бы использовал javascript/jquery's ajax для легкой игры с такой ситуацией. Мои решения, для первого select элемент, вы просто выбираете все данные из базы данных и помещаете их внутрь 1st select элемент. Тогда эта часть, AJAX поможет вам.

Поток это:

  1. Получить все данные из php и заполнить данные в 1-й элемент выбора. Сделайте, чтобы это значение сохраняло идентификатор данных
  2. регистр onChange событие в первом поле выбора, прослушайте событие и получите значение (ID).
  3. внутри onChange событие снова, сделать POST Ajax requestотправка данных (ID) вместе на код серверной стороны.
  4. Выполните операцию с базой данных, выбрав данные, которые не включают идентификатор отправки. например: select *from tableName where id NOT IN(Id_that_we_sent)
  5. Отправка данных (ответ) назад и заполнение данных во второй элемент выбора

Бьюсь об заклад, есть еще один обходной путь, который вы можете реализовать. Но вот подход, который вы можете использовать. Выбор за вами. 🙂

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector