Повторяющиеся значения при заполнении раскрывающегося списка выбора из запроса mysql

Я пытаюсь заполнить раскрывающийся список выбора html данными из нескольких столбцов в запросе mysql.

Когда я извлекаю первый столбец, он без проблем заполняет раскрывающийся список. Когда я добавляю вторую или третью колонку, у меня возникают проблемы. Первоначально у меня были пустые поля, это было решено добавлением! Empty ().

Однако теперь я получаю повторение значений вместо пробелов.

 <?php
        $base = '';
        $base2 = '';
        $base3 = '';

 while($row = mysqli_fetch_assoc($resultpmb)) {
  $code=$row["id"];
  $name=$row["gw_name"];
  if (!empty(trim($row['vg_name']))){
  $vgname=$row["vg_name"];}
  if (!empty(trim($row['vm_name']))){
  $vmname=$row["vm_name"];}

$base .= "<option value = " .$code.">".$name."</option>";
$base2 .= "<option value = " .$code.">".$vgname."</option>";
$base3 .= "<option value = " .$code.">".$vmname."</option>";

}
?>
        <div class = "form-group col-4 col-m-12">
         <div class = "input-group">
            <span class = "input-group-addon"><span class = "glyphicon 
glyphicon-lock"></span></span>
<select name = "base_colour1" class = "form-control" id = "base_colour1">
<option value = "">Base...</option>
<?php 
echo "<option value=''>---- GW Golour ----</option></br>";
echo $base;
echo "<option value=''>---- Vallejo Game Golour ----</option>";
echo $base2; 
echo "<option value=''>---- Vallejo Model Golour ----</option>";
echo $base3;
?>
</select>
</div>
        </div>

Ваше значение внутри цикла все равно, что $code

Masivuye Cokile 20.12.2018 15:36

Это потому, что это разные поля в одной строке.

Foster 21.12.2018 10:31
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать 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
2
58
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Может быть проще добавить строки в ваш тест !empty(), иначе он всегда будет добавлять значения - даже если их нет ...

while($row = mysqli_fetch_assoc($resultpmb)) {
  $code=$row["id"];
  $name=$row["gw_name"];
  if (!empty(trim($row['vg_name']))){
      $base2 .= "<option value = " .$code.">".$row["vg_name"]."</option>";
  }
  if (!empty(trim($row['vm_name']))){
      $base3 .= "<option value = " .$code.">".$row["vm_name"]."</option>";
  }

  $base .= "<option value = " .$code.">".$name."</option>";


}

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