alexanev6
@alexanev6
UX / UI дизайнер

Как сделать, чтобы значение в выпадающем списке (форма на php) оставалось на экране после отправки формы?

Есть форма, которая выводит время в часовом поясе по городу из выпадающего списка. Форма работает, но выбранное значение города не остается на экране после отправки формы. Хотелось бы, чтобы оно оставалось. Помогите мне решить эту проблему пожалуйста

<?php
$result = false;
if (isset($_POST['done'])) {
	$mytime = $_POST['mytime'] ?? false;

	function gmt($local) {
		$offset = date("Z", $local);
		return $local - $offset;
	}



	switch ($mytime) {
		case 'time1':
			 $result = date('H:i:s', time(true));
			break;
		case 'time2':
			 $result = date('H:i:s', time(true) - 3600);
			break;
		
		case 'time3':
			 $result = date('H:i:s', gmt(time(true)));
			break;
	}
}
	
?>
<p>Текущее время:<?=$result?> </p>
<form name="myform" action="<?=$_SERVER['PHP_SELF']?>" method = "post">
	<select name="mytime" >
		<option value= "time1" selected="<?=$_POST['mytime']?>">Москва</option>
		<option value="time2" selected="<?=$_POST['mytime']?>">Берлин</option>
		<option value="time3" selected="<?=$_POST['mytime']?>">Лондон</option>
	
	</select>
	<input type="submit" name="done" value="Нажать">
</form>
  • Вопрос задан
  • 319 просмотров
Решения вопроса 2
dollar
@dollar
Делай добро и бросай его в воду.
kylt_lichnosti
@kylt_lichnosti
Надо не так:
selected="<?=$_POST['mytime']?>"

А наверное как то так:
<?php if ($_POST['mytime'] == 'time1'): ?>selected<?php endif; ?>

Код города подставить нужный для нужного пункта.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы