2014-02-04 4 views
0

Я создаю форму для обновления данных в моем приложении php/mysql. Для предварительного заполнения значения типа входного = поле «Текст» в виде обновления из имеющихся данных, я использую этот код:Предварительная подготовка полей ввода ввода в форме обновления

<label for="username">Username:</label> 
<input name="username" type="text" value="<?php echo htmlentities($username, ENT_COMPAT, 'utf-8'); ?>"> 

Этот код выше успешно отображает существующие данные из базы данных для редактирования. Однако для поля ввода выпадающего списка, которое динамически создает параметры выбора, как в приведенном ниже коде, как я могу повторно отобразить существующие выбранные данные в форме обновления?

<label for="user_role">User Role:</label> 
<select name="user_role"> 
    <option value="">Select User Role</option> 
<?php 
    // get results 
    $query = 'SELECT userid, user_role FROM users_profile ORDER BY user_role'; 
    $results = $conn->query($query); 
    while ($row = $results->fetch_assoc()) {?> 
    <option value="<?php echo $row['user_role']; ?>" <?php if (isset($_POST['userid']) &&  in_array($row['user_role'], $_POST['user_role'])) {echo 'selected'; 
    } ?>><?php echo $row['user_role']; ?></option> 
<?php } ?> 
</select> 

ответ

1

Попробуйте

<label for="user_role">User Role:</label> 
    <select name="user_role"> 
     <option value="">Select User Role</option> 
    <?php 
     // get results 
     $query = 'SELECT userid, user_role FROM users_profile ORDER BY user_role'; 
     $results = $conn->query($query); 
     while ($row = $results->fetch_assoc()) { 
      $selected=''; 
      if($row['user_role']==$update_id['user_role']) // put your update user_role here 
      $selected='selected="selected"'; 
      ?> 
     <option value="<?php echo $row['user_role']; ?>" <?php echo $selected; ?>><?php echo $row['user_role']; ?></option> 
    <?php } ?> 
    </select> 
Смежные вопросы