我有一个小的错误处理函数,在重定向时通知用户应该通知用户错误。
目前,它要么重定向但不通过变量$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'];
}