Обновление выпадающего из базы данных SQL с использованием PHP
Я знаю, что это должно быть просто, но я просто не могу разобраться с этим.
У меня есть список континентов в базе данных SQL, которые я возвращаю с помощью PHP DBO и отображаю в выпадающем списке. Затем я хочу получить предпочтительный континент пользователей из базы данных sql и выбрать его в списке. Например, если список содержит Мир, Африку, Европу, Северную Америку и Южную Америку, но фаворитом пользователей является "Европа", я хочу, чтобы он был выбран. $getContinent
это предпочтение пользователей.
while ($row = $continent_results->fetch(PDO::FETCH_ASSOC)) {
if ($getContinent != ''){
echo '<option value="' . $getContinent . '" selected="selected" >' . $row['CONTINENT_NAME'] . '</option>';
}else{
echo '<option value=' . $row['CONTINENT_ID'] . '>' . $row['CONTINENT_NAME'] . '</option>';
}
}
Я был бы очень признателен, если бы кто-то мог поправить меня, поскольку я нашел некоторые примеры в Интернете, но не смог заставить их работать:)
3 ответа
Ваш код должен быть таким
while ($row = $continent_results->fetch(PDO::FETCH_ASSOC)) {
//just check if the option id is equal to the chosen value
if ($getContinent != '' && $getContinent==$row['CONTINENT_ID'] ){
echo '<option value="' . $getContinent . '" selected="selected" >' . $row['CONTINENT_NAME'] . '</option>';
}else{
echo '<option value=' . $row['CONTINENT_ID'] . '>' . $row['CONTINENT_NAME'] . '</option>';
}
}
Все просто, как вы уже догадались:D
Вы можете использовать троичный оператор
while ($row = $continent_results->fetch(PDO::FETCH_ASSOC)) {
echo '<option value="' . $row['CONTINENT_ID'] .
($getContinent == $row['CONTINENT_NAME']) ? '" selected="selected"' : '"' . '>' .
$row['CONTINENT_NAME'] . '</option>';
}
Вы бы использовали что-то вроде этого:
while ($row = $continent_results->fetch(PDO::FETCH_ASSOC)) {
echo '<option value="' . $row['CONTINENT_ID'] . '">' . $row['CONTINENT_NAME'] . '</option>';
}
Надеюсь, это поможет!
--al