Я написал некоторый код PHP, который позволит мне создать выпадающий список html, а затем выбрать, какое должно быть выбранное значение.Код выглядит так:
$role_drop = "<select name='role'>";
$role_drop .= "\r\n<option value='Resident Assistant'>Resident Assistant</option>";
$role_drop .= "\r\n<option value='Community Assistant'>Community Assistant</option>";
$role_drop .= "\r\n<option value='Head RA'>Head RA</option>";
$role_drop .= "\r\n</select>";
$result = mysql_query("SELECT role FROM users");
if (@mysql_num_rows($result)) {
while ($r=@mysql_fetch_assoc($result)) {
$role = $r["role"];
$role_drop = str_replace(">$role</option>", "selected=\"\" >$role</option>",$role_drop);
echo $role_drop;
}
}
На самом деле этот код содержит множество HTML, но здесь есть весь PHP.Когда я запускаю его, это похоже на работу.Однако предположим, что запрос вернул 4 раскрывающихся окна с ролями (от 4 пользователей), и я должен был изменить или выбрать новую роль для второго возвращенного раскрывающегося окна (с запросом UPDATE), а затем при обновлении страницы всеиз ролей, включающих и ПОСЛЕ того, как в раскрывающемся окне, которое я обновил, их выбранные значения будут отображаться как новые, которые я выбрал в раскрывающемся списке 2-го.отображение неверно выбранного значения.Вот исходный код для 3-го выпадающего списка после того, как я выбрал новое значение для второго:
<select name="role">
<option selected="" value="Resident Assistant">Resident Assistant</option>
<option value="Community Assistant">Community Assistant</option>
<option selected="" value="Head RA">Head RA</option>
</select>
Итак, кажется, что он выбирает правильное значение (Resident Assistant), однако его ТАКЖЕ выбирает "Head"RA ", что я и изменил в предыдущем раскрывающемся списке.
Это очень странно, и я понятия не имею, почему это происходит.Есть идеи?
Спасибо!