Заполните множественный выбор php while loop из db

Следующее работало в локальной среде. Теперь, когда это толкнуло
живи всем, но это, кажется, работает. Отображает полностью пустые поля выбора, теперь нет чеков или пустых меток, только пустое место в выпадающем списке «Параметры выбора».
выберите дисплей

<?php
$selected = array();
$selected = explode(",",$fill['markets']);

$condb = mysql_query("SELECT * FROM `countries`");
$count = mysql_num_rows($condb);
$countries = array();
$str;

while ($countries = mysql_fetch_array($condb))
{
$str = "option{$countries['id']}";
echo "<option value='{$str}' ";
if(in_array($str,$selected)) {
echo "selected>";
echo $countries['country'];
echo "</option>";
} else {
echo ">";
echo $countries['country'];
echo "</option>";
}
}
?>

1

Решение

Вместо этого вы должны использовать цикл while. Вы можете объявить $i вне цикла, если вам это нужно, попробуйте следующий код:

  $condb = mysql_query("SELECT * FROM `countries`");

$i = 0;
while($countries = mysql_fetch_array($condb)) {
$str = 'option' . $i;
echo "<option value='{$str}' ";
if(in_array($str,$selected)) {
echo "selected>";
echo $countries['country'];
echo "</option>";
} else {
echo ">";
echo $countries['country'];
echo "</option>";
}
$i++;
}
?>
</select>

Замечания:

mysql_* устарело с . Поэтому вместо использования mysqli_* или же PDO,
Почему я не должен использовать функции mysql_ * в PHP?

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]