2017-02-02 3 views
0

мне нужно заполнить выпадающее меню с датой из базы данных, это то, что я сделал до сих порВыпадающее меню из базы данных MySQL

<div class="col-md-6"> 
    <?php 
     $query_user_group = mysqli_prepare ($conn, " 
SELECT group_name 
    , group_id 
    FROM user_group_join 
    LEFT 
    JOIN user_group 
    ON user_group_join . group_join_id = user_group . group_id 
WHERE user_join_id = ? 
"); 
     mysqli_stmt_bind_param($query_user_group, 'i', $client_id); 
     mysqli_stmt_execute($query_user_group); 
     mysqli_stmt_bind_result($query_user_group, $group_name, $group_id); 
     mysqli_stmt_fetch ($query_user_group); 
     mysqli_stmt_close($query_user_group); 

    ?> 

         <div class="form-group"> 
         <label class="control-label">Condominio in gestione*</label> 
         <select class="bs-select form-control" name="usergroup"> 
         <option value="<?php echo $group_id;?> " selected="selected"><?php echo $group_name;?></option> 

         <?php 

         $select_group_query= mysqli_prepare($conn, "SELECT group_id, group_name FROM user_group"); 
         mysqli_stmt_execute($select_group_query); 
         mysqli_stmt_bind_result($select_group_query, $idgruppo, $nomegruppo); 


          while(mysqli_stmt_fetch($select_group_query)) 

           {  

            echo "<option value= '".$idgruppo."'>" . $nomegruppo . "</option>"; 

           } 


         ?> 

         </select> 

         <span class="help-block"> Assicurati di aver creato una scheda condominio! <br>Per inserire un nuovo condominio <a href="admin_create_new_group.php">Clicca Qui</a></span> 



         </div> 
</div> 

Проблема в том, что выпадающий показывает выбранное значение дважды в раскрывающемся списке , любая идея, как я могу разобраться? Это скриншот ошибки enter image description here Большое спасибо

+0

<параметр значение = "" выбрано = "выбрано"> ..... почему бы не сделать этот вариант сказать что-то вроде, пожалуйста, выберите? – Carlitos

ответ

0

Вы можете использовать DISTINCT в вашем SELECT запросе, как это:

SELECT DISTINCT group_id, group_name FROM ... 

Кроме того, вам не нужна эта линия вообще,

<option value="<?php echo $group_id;?> " selected="selected"><?php echo $group_name;?></option> 

Вы можете использовать атрибут тега option, чтобы достичь желаемый результат.

Таким образом, ваш выпадающий список код должен выглядеть так:

<select class="bs-select form-control" name="usergroup"> 
<?php 
    $select_group_query= mysqli_prepare($conn, "SELECT DISTINCT group_id, group_name FROM user_group"); 
    mysqli_stmt_execute($select_group_query); 
    mysqli_stmt_bind_result($select_group_query, $idgruppo, $nomegruppo); 
    while(mysqli_stmt_fetch($select_group_query)){ 
     $output = "<option value= '".$idgruppo."'"; 
     if($idgruppo == $group_id){ 
      $output .= " selected='selected'"; 
     } 
     $output .= ">" . $nomegruppo . "</option>"; 
     echo $output; 
    } 
?> 
</select> 
+0

Привет, спасибо за вашу помощь, кажется, отлично работает. Другое решение, о котором я только подумал, может использовать SELECT group_id, group_name FROM user_group WHERE group_id NOT LIKE $ group_id, но я думаю, что я собираюсь использовать ваше решение, и определенно я собираюсь изучить, как работает DISTINCT, я не знал из этого;) большое спасибо еще раз – pippo

+0

@pippo Добро пожаловать! Рад, что смог помочь. ;-) –

Смежные вопросы