Следующее работало в локальной среде. Теперь, когда это толкнуло
живи всем, но это, кажется, работает. Отображает полностью пустые поля выбора, теперь нет чеков или пустых меток, только пустое место в выпадающем списке «Параметры выбора».
выберите дисплей
<?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>";
}
}
?>
Вместо этого вы должны использовать цикл 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_*
устарело с PHP-5,5. Поэтому вместо использования mysqli_*
или же PDO
,
Почему я не должен использовать функции mysql_ * в PHP?
Других решений пока нет …