Есть форма и в ней для примера input с типом submit
По нажатию на инпут производится отправка формы, а в шапке страницы php код обрабатывает это событие и если в сессию записан url предыдущей страницы - редиректит на нее, если нет - возвращает юзера на основой index.php.
На деле же при нажатии на инпут страница просто обновляется и ничего не происходит.
session_start();
$url_lin = $_SESSION['url'];
echo $url_lin;
if(isset($_POST["close"])) {
if(isset($_SESSION['url'])) {
// $url_link = $_SESSION['url'];
// echo "<br> $url_link <br>";
header("Location: $url_lin");
exit();
} else {
$url_lin = '';
header("Location: $url_lin");
exit();
}
}
HTML:
<form method="post" id="closeForm" name="close">
<input type="submit" style="position: absolute; margin-top: 0px;">
</form>
На всех остальных страницах сайта в начале прописывается
session_start();
$url = ((!empty($_SERVER['HTTPS'])) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$url = explode('?', $url);
$url = $url[0];
$_SESSION['url'] = $url;
Это записывает полный путь сайта в Session['url']
Если укоротить:
session_start();
$_SESSION['url'] = $_SERVER['REQUEST_URI'];
В чем проблема? Проверяю SESSION['url'] - ссылка правильная. Но по ней не переходит, а просто обновляет текущую страницу.
UPD: сейчас понял, что форма судя по всему не отправляется, поэтому ничего не происходит. Посмотрите, может я недоглядел