Я использую php с раскрывающимся списком для выбора данных и отображения выбранного элемента в раскрывающемся списке после обновления страницы, поэтому я использовал этот код, который работает.
<select name = "select" id = "mysort" onchange = "select(this.value);">
<option value = "5" <?php if ($selecting == '5'):?> selected = "selected"<?php endif;?>>5 </option>
<option value = "6" <?php if ($selecting == '6'):?> selected = "selected"<?php endif;?>>6 </option>
<option value = "7" <?php if ($selecting == '7'):?> selected = "selected"<?php endif;?>>7 </option>
<option value = "8" <?php if ($selecting == '8'):?> selected = "selected"<?php endif;?>>8 </option>
</select>
Затем я хочу иметь возможность заполнить раскрывающийся список из базы данных mysql. Этот код работает:
$sql = "SELECT DISTINCT number FROM files ORDER BY number";
$result = $mysqli->query($sql);
echo '<select name = "choose" id = "mychoice">';
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo '<option value='.$row["number"].'>'.$row,["number"].'</option>';
}
echo '</select>';
}
У меня возникают проблемы с синтаксисом, когда я объединяю два блока кода, чтобы значения заполнялись из mysql, а выбранный параметр отображался в раскрывающемся списке после обновления страницы. Буду признателен за любую помощь в этом.
Я хочу иметь возможность объединить эти две строки: <option value = "5" <?php if ($selecting == '5'):?> selected = "selected"<?php endif;?>>5 </ option> и echo '<option value='.$row6["yearlevel"].'>'.$row6["yearlevel"].'</option>'; но получаю синтаксические ошибки php для всех возможностей, которые я пробую.
Я до сих пор не уверен, что вы подразумеваете под «объединить эти две строки». Вы пытаетесь добавить дополнительные параметры к своему выбору через PHP после загрузки вашей страницы? Можете ли вы включить больше контекста в свой вопрос, а также ошибку, которую вы получаете? В блоке кода в вашем вопросе есть синтаксическая ошибка, в $row,["number"]
не должно быть запятой, если это поможет.
Я думаю, ты хочешь этого -
while($row = $result->fetch_assoc()) {
echo '<option value = "'.$row["number"].'"';
if ($selecting == $row["number"]) { echo " selected "; }
echo '>'.$row["number"].'</option>';
}
Что вы пытаетесь сделать, не совсем понятно. Можете ли вы объяснить поток более подробно? Что происходит, вы получаете какие-либо ошибки?