Я не могу отобразить выбранную опцию из списка данных при перезагрузке формы.
echo '<input list="clients" name="client"><datalist id="clients"name="client" value="'.$_POST['client'].'">';
while($row=mysqli_fetch_array($result))
{
if(isset($_POST['client']))
{
echo'<option value="'.$_POST['client'].'">';
}
else
{
echo'<option value="'.$row['partyname'].'">';
}
echo '</datalist>';
}
Попробуйте то, что я могу понять:
<form method="post">
<?php
$con = mysqli_connect('localhost','root','','test');
$sql = 'select * from person';
$result = mysqli_query($con,$sql);
echo '<input list="clients" name="client">
<datalist id="clients" name="client" value="'.$_POST['client'].'">';
if(isset($_POST['client']))
{
echo'<option value="'.$_POST['client'].'">';
}
else
{
while($row=mysqli_fetch_array($result))
{
echo'<option value="'.$row['nameOfPerson'].'">';
}
}
echo '</datalist>';
?>
<br /><input type="submit" value="submit" name='submit'/>
</form>
ВЫХОД 1, когда не установлена переменная записи
Вывод 2 при отправке и установке значения сообщения
Во втором выводе остальные предыдущие данные не отображаются, потому что я не вставил новое значение в базу данных, а просто поместил это новое отправленное значение в список данных. so if block executed
Надеюсь, я правильно понял ваш вопрос
Других решений пока нет …