我有一个显示和处理表单回发的控制器。一旦表单被成功验证并且数据被相应地处理,控制器将重定向到另一个页面。
重定向完成后相当于:
@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';
第二种方法是调整非安全页面内容的好方法。你可以…
if (isset($_GET['msg']) && $_GET['msg'] == '42') {
echo '<div>Your account was successfully updated</div>';
}
我觉得很简单。
会话变量中的一次性消息对我来说工作得很好。我认为这里没有太大的问题,特别是对于状态类型消息。
如果你正在使用一个框架,它很可能是内置的。
使用session将允许更灵活的消息,但任何一种方式都可以工作。
您是否可以不使用ajax,然后添加一个成功和失败回调,显示来自您发送数据的文件的响应数据?