#redirect #header #location
#перенаправление #заголовок #Расположение
Вопрос:
Я хочу перенаправить две страницы одновременно.
if(any statement) {
Header("Location: http://example.com/page.php");
Header("Location: folder/page.php"); }
else { echo " comment "; }
Будет ли это работать?
Найденное решение см. В комментариях.
Ответ №1:
Нет. С какой стати вам это нужно? Даже если бы вы могли, как вы думаете, как браузер может отображать две страницы? Новые окна / вкладки? Но что, если это браузер без окон (например, lynx)?
Если вы используете приведенный выше код, PHP заменит первый заголовок location вторым, поскольку никакие заголовки фактически не отправляются, пока вы не начнете вывод содержимого, после чего вы не сможете вызвать header() .
Комментарии:
1. У меня два хостинга, и я хочу отправить некоторую информацию о файлах, когда я загружаю каждую из них на другую. Каким-либо образом?
2. Извините, я не совсем понимаю, что вы хотите сделать. Можете ли вы указать пошаговую последовательность желаемых событий? Если вы хотите отправить информацию на одну страницу изнутри PHP, лучшим решением было бы использовать cURL API для связи со страницей, а не полагаться на браузер пользователя, который сделает это за вас (извините, если я неправильно понял, что вы хотите сделать).
3. Привет, дорогой, я думаю, что способ, пожалуйста, прочитайте и прокомментируйте.. Site-«A» и Site-«B» — это два отдельных домена. Если я отправлю заголовок GET с сайта «A» на сайт «B» при отправке формы и снова отправлю данные GET с сайта «B» на сайт «A» при завершении сценария на странице «B». На сайте -«A»
<form action="site-B.php" method="GET"><input type="submit" name="rate" value="Rate"></form>
На сайте-«B»Header("Location: http://site-A.com/pageA.php?stat=completeamp;url=file/link.php");
Пожалуйста, проверьте это.4. Да, это будет работать нормально. Однако есть небольшой недостаток в том, что клиенту пользователя все равно приходится делать два запроса. Если все, что делает site-B, это обрабатывает некоторые данные и никогда не отправляет содержимое пользователю, тогда более приятным методом было бы заставить Site-A отправлять данные на Site-B за кулисами. Итак, в Site-A:
<form action="site-a-page.php><--...-->
, затем в скрипте, который обрабатывает форму (все еще на Site-A):$curl = curl_init("http://Site-B.com/data-handler.php?data=value"); curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); curl_exec($curl); /* Now send output to the user */