Я хочу что-то вроде этого:
<?php if($something) header('Location:javascript:history.go(-2)'); ?>
но header('Location:javascript:history.go(-2)');
не работает. Любые альтернативы?
Я не знаю страницы, на которой был пользователь, поэтому я не могу указать код URL.
С вашей точки зрения, я думаю, вы можете искать что-то вроде этого:
<html><head></head><body> <?php if($something){ ?> <script type="text/javascript"> window.history.go(-2); </script> <?php } ?> </body></html>
Пока они туда попали по ссылке, которую вы могли бы использовать
header("Location: " . $_SERVER['HTTP_REFERER']);
Вы не можете использовать javascript:
псевдо протокол в HTTP-заголовке Location
. Фактически, вы действительно не должны использовать его вообще.
Вместо этого отправьте весь URL-адрес на страницу, на которую вы хотите, чтобы пользователь возвращался через HTTP-заголовок Location
(если можно), или вы могли бы эхом history.back()
хотя я сильно отговариваю вас от этого .
Как побочная заметка, всегда exit
после отправки HTTP-заголовка Location
. Пользовательским агентам не обязательно следовать им.
По вашей проблеме. Вы можете использовать следующий код в php-скрипте в любом месте ..
код:
<?php if($something){ echo "<script>window.history.back()</script>"; } ?>