2017-01-22 2 views
3

У меня есть форма, которая содержит опцию выбора для ввода данных (параметры выбираются из базы данных MySQL), если я хочу обновить форму на более позднем этапе, возможно ли получить форму выбрать опцию как предварительно выбранную?обновить форму, имеющую опцию выбора

Здесь я показываю код формы, имеющий выбор опций

<?php 
$queryjob = "SELECT * FROM `job`"; 
$result2 = mysqli_query($con, $queryjob); 

$options = ""; 

while($row2 = mysqli_fetch_array($result2)) 
    { 
     $options = $options."<option>$row2[1]</option>"; 
    } 

?> 


<tr> 
    <td ><div class='tabdata' align="right"> Name of Job/Survey:&nbsp;</div></td> 
    <td > <div class='tfieldz' align="right"> 
     <select class='tfieldz' id="job_name" name="job_name" required='required'> 
     <?php echo $options;?> 
     </select></div> 
    </td> 
</tr> 
+0

Это, конечно, возможно. Однако в настоящий момент код не указывает, где выбранный параметр сначала сохраняется (до того, как форма будет представлена ​​снова). Таким образом, нет никаких ссылок на какие-либо сравнения. –

+0

В вашем случае, единственное изменение, которое вы должны будете сделать это .... 'в то время как ($ row2 = mysqli_fetch_array ($ result2)) { \t если ($ row2 [1] == $ some_previously_stored_value) { \t $ options = $ options. ""; \t} \t еще { \t \t $ Варианты = опции $ "". \t} } ' –

+0

Все ли опции хранятся в базе данных? – user3284463

ответ

0

Вы можете добавить атрибут selected="" к опции, которая должна быть предварительно выбрана.

Пример будет выглядеть следующим образом:

//You could use this in your loop 

if($saved_value == $row[1]){ 
    echo "<option selected>$row[1]</option>"; 
}else{ 
    echo "<option>$row[1]</option>"; 
} 
0

Как я понимаю, вы пытаетесь установить выбранное значение по умолчанию переключателя. Для установки этого значения вы можете использовать следующий код:

/** The selectbox default value. This can come from database */ 
$selectbox_value = "selectbox default value"; 
while($row2 = mysqli_fetch_array($result2)) 
    { 
     if ($selectbox_value == $row2[1]) $options = $options."<option SELECTED value='".$row2[1]."'>$row2[1]</option>"; 
     else $options = $options."<option value='".$row2[1]."'>$row2[1]</option>"; 
    } 

В приведенном выше коде атрибут value добавлен в тег опции. Когда форма отправляется, значение атрибута value отправляется на сервер и сохраняется в базе данных. Это сохраненное значение должно быть считано из базы данных и сохранено в $ selectbox_value

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