Заполните раскрывающийся список из mysql и отобразите выбранный элемент в раскрывающемся списке после обновления страницы

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

<select name = "select" id = "mysort" onchange = "select(this.value);">
    <option value = "5"  <?php if ($selecting == '5'):?> selected = "selected"<?php endif;?>>5 </option>
    <option value = "6"  <?php if ($selecting == '6'):?> selected = "selected"<?php endif;?>>6 </option>
    <option value = "7"  <?php if ($selecting == '7'):?> selected = "selected"<?php endif;?>>7 </option>
    <option value = "8"  <?php if ($selecting == '8'):?> selected = "selected"<?php endif;?>>8 </option>
</select>

Затем я хочу иметь возможность заполнить раскрывающийся список из базы данных mysql. Этот код работает:

$sql = "SELECT DISTINCT number FROM files ORDER BY number";
$result = $mysqli->query($sql);
echo '<select name = "choose" id = "mychoice">';
    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
          echo '<option value='.$row["number"].'>'.$row,["number"].'</option>';
        }
        echo '</select>';
    }

У меня возникают проблемы с синтаксисом, когда я объединяю два блока кода, чтобы значения заполнялись из mysql, а выбранный параметр отображался в раскрывающемся списке после обновления страницы. Буду признателен за любую помощь в этом.

Что вы пытаетесь сделать, не совсем понятно. Можете ли вы объяснить поток более подробно? Что происходит, вы получаете какие-либо ошибки?

Andrew 23.04.2022 04:17

Я хочу иметь возможность объединить эти две строки: <option value = "5" <?php if ($selecting == '5'):?> selected = "selected"<?php endif;?>>5 </ option> и echo '<option value='.$row6["yearlevel"].'>'.$row6["yearlevel"].'</option>‌​'; но получаю синтаксические ошибки php для всех возможностей, которые я пробую.

user3538252 23.04.2022 04:28

Я до сих пор не уверен, что вы подразумеваете под «объединить эти две строки». Вы пытаетесь добавить дополнительные параметры к своему выбору через PHP после загрузки вашей страницы? Можете ли вы включить больше контекста в свой вопрос, а также ошибку, которую вы получаете? В блоке кода в вашем вопросе есть синтаксическая ошибка, в $row,["number"] не должно быть запятой, если это поможет.

Andrew 23.04.2022 04:48
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
24
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я думаю, ты хочешь этого -

    while($row = $result->fetch_assoc()) {
      echo '<option value = "'.$row["number"].'"'; 
      if ($selecting == $row["number"]) { echo " selected "; }
      echo '>'.$row["number"].'</option>';
    }

Другие вопросы по теме