2013-03-28 7 views
0

Есть ли способ отправить некоторые атрибуты при перенаправлении с помощью функции header()?Атрибуты в функции header()

Я бы хотел отправить сообщение об ошибке при перенаправлении (PHP5).

Я знаю, что могу просто показать страницу с ошибкой в ​​течение 5 секунд или около того, а затем перенаправить. Или перенаправить запрос в ссылку, но это не главное.

Somethin как это:

header('Location: /mvc/index.php', $some_attributes); 

и как получить их на индексной странице?

Btw, я думаю, что местоположение не может быть относительным, я прав?

ответ

2

URL-адрес URL. Вы можете передавать данные таким же образом, как и любой другой URL (т. Е. Закодировать его в строке запроса, а затем прочитать их с помощью $_GET).

Btw, я думаю, что местоположение не может быть относительным, я прав?

Да. Большинство браузеров будут выполнять восстановление ошибок в относительных URI в заголовках местоположений (Lynx сделает это, пока мигает предупреждение у пользователя), но спецификация требует, чтобы они были абсолютными.

+0

Я знаю этот путь с помощью строки запроса. Это самый распространенный способ? – troks

2

Вы можете использовать его как этот

header('Location: /mvc/index.php?attr='.$some_attributes); 

и получить его, как это в index.php

echo $_GET['attr']; 
0

Если вар является массив:

header('Location: /mvc/index.php?'.http_build_query($some_attributes)); 
1

Вы можете поместить сообщение об ошибке в сеанс, перенаправить, отобразить сообщение об ошибке на странице ошибки и удалить его после сеанса.

Смежные вопросы