PHP – Передать переменные POST с заголовком ()?

Я пытаюсь использовать функцию header () для создания перенаправления. Я хотел бы отобразить сообщение об ошибке. В настоящее время я отправляю сообщение как параметр через URL-адрес, однако это делает его довольно уродливым.

Есть ли способ передать это значение вместо переменной post?

Любые советы приветствуются.

Благодарю.

Дэн, вы можете начать и сохранить сеанс в PHP, а затем сохранить сообщение как переменную сеанса. Это избавит вас от необходимости передавать сообщение в HTTP-запросе.

Манипулирование сеансами

//Start the session session_start(); //Dump your POST variables $_SESSION['POST'] = $_POST; //Redirect the user to the next page header("Location: bar.php"); 

Теперь в bar.php вы можете получить доступ к этим переменным POST, повторно инициировав сеанс.

 //Start the session session_start(); //Access your POST variables $temp = $_SESSION['POST']; //Unset the useless session variable unset($_SESSION['POST']); 

Чтобы узнать больше о сеансах, проверьте: http://php.net/manual/en/function.session-start.php

Функция заголовка используется для отправки заголовков HTTP-ответа обратно пользователю, поэтому на самом деле вы не можете использовать его для создания заголовков запросов 🙁

Одна из возможностей – использовать CURL, но я не думаю, что это стоит того, что вы делаете.

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

 if(something_went_wrong()) { require_once('errors.php'); display_error('something really went wrong.'); } 

Файл errors.php будет содержать определение для display_error($message) , которое отображает форматированное сообщение.