HTML-тег <select>. Выбранный параметр не отображается, если страница не обновлена

Так что у меня очень странная ошибка. У меня есть значение, $ll1_name, которое получено из запроса MySQL через PHP.

Вот пример кода:

$sql = mysql_query("SELECT data_txt FROM field_data WHERE itemid = $uid AND fieldid = 16");
$row = mysql_fetch_array($sql);
$ll1_key = $row[0];
//$ll1 = $row[0];
$sql = mysql_query("SELECT info FROM landlords WHERE key = '$ll1_key'");
$row = mysql_fetch_array($sql);
$ll1_name = $row[0];

^ который устанавливает переменные для правильных арендодателей, если они существуют для определенного арендатора.

<select name=ll1>


<?php
if (is_null($ll1_key)){
?>
    <option selected> Empty </option>
<?php
}

else{
?>

    <option selected value="<?php echo "$ll1_key"; ?>"> <?php echo "$ll1_name"; ?> </option>
<?php   
}

while ($curLandlord = mysql_fetch_array($landlordRows)){
?>
<option value="<?php echo "$curLandlord[0]"; ?>"> <?php echo "$curLandlord[1]"; ?></option>

<?php
}
?>


</select>

^ Это заполняет раскрывающийся список. Если он нулевой, по умолчанию используется значение "Пусто". В противном случае он сделает выбранный вариант текущим землевладельцем.

Тем не менее, поле пустое. Исходный код страницы выглядит так:

<option selected value="ll1_72">  </option>

Вы можете видеть, что правильный ключ для арендодателя установлен в качестве значения; но мой php-код ничего не выводит для выбранного текста в поле. ОДНАКО, если вы обновите страницу, она загружается правильно с именем лендлорда. Но исходный код выглядит точно так же. Если я обновлю Firefox без кэшированных данных (Ctrl+ Shift+ R), то я все равно получу пустое поле после обновления.

Кто-нибудь знает, что происходит? Я вижу это поведение в нескольких браузерах (IE 11, Chrome и Firefox).

1 ответ

Может быть, попробуйте без кавычек:

<?php echo $ll1_name; ?>
Другие вопросы по тегам