我有一个控制器,可以显示和处理表单的回发。一旦表单成功验证并且数据已相应处理,控制器将重定向到另一页。
重定向完成的内容相当于:
@header('Status: 303 See other');
@header('Location: ' . $redirect_uri);
控制器提供要在新页面上显示的消息的最可靠方法是什么?这是否有标准做法?
即。 “您的帐户已成功更新。”
我的想法是将动态生成的消息放入会话变量中,并在URI本身中指示具有唯一ID的预定义消息:
$_SESSION['previous-response-msg'] = "Account of '$user_name' was updated.";
or
$redirect_uri = 'http://example.com/other-page?msg=42';
答案 0 :(得分:2)
您的第二种方法是调整非安全页面内容的好方法。无论您希望信息显示在您的网页上,您都可以......
if (isset($_GET['msg']) && $_GET['msg'] == '42') {
echo '<div>Your account was successfully updated</div>';
}
简单的想法,我想。
答案 1 :(得分:1)
会话变量中的一次消息对我来说很好。我在这里看不到太多问题,特别是对于状态类型消息。
如果你正在使用一个框架,它很可能是内置的。
答案 2 :(得分:1)
使用会话将允许更灵活的消息,但无论哪种方式都可行。我没有意识到“最佳实践”。
答案 3 :(得分:0)
您是否可以使用ajax然后添加成功和失败回调,它会显示您发送数据的文件中的响应数据?