是否可以通过标题重定向将变量发送到页面


Is it possible to send a variable to a page via a header redirect?

我有一个小的错误处理函数,在重定向时通知用户应该通知用户错误。

目前,它要么重定向但不通过变量$error和$prize,要么我可以从函数中回显出$error。

我需要能够重定向用户,然后在新页面上回显变量。我可以这样做吗?

function error($error, $prize)
 {
    header('Location: ' . $form);
    echo $error . '<br />';
    echo $prize;
exit;
} // end error handler

此问题通常使用会话变量来解决,这些变量在重定向后的下一页上显示错误。基本上,只需检查每个页面上的会话消息/错误 - 然后您也可以随时将消息/错误添加到用户的会话中。

大多数PHP框架在其会话处理部分下将其列为"flash变量"。

你可以通过 GET 来完成:

$params = http_build_query(array('error'=> $error, 'prize'=>$prize));
header('Location: '.$form.'?'.$params);

目标页面:

if($_GET) {
   $vars = $_GET;
   echo $vars['error']; 
   echo $vars['prize'];
}