我已经这样做了一段时间,但在涉及 PRG 时仍然感到困惑。我知道它是如何工作的,例如我会这样做:
if($_POST){
header("Location: ".$_SERVER['REQUEST_URI']);
exit();
}
因为它会停止用户刷新并再次将 POST 发送到服务器。但我不断收到“警告:无法修改标头信息 - 标头已发送”等等消息。我知道这是因为重定向需要在任何空格或回显或文本等之前进行......所以在标题上方将是理想的!
但是如果我的表单被发送到一个没有标题或任何东西的随机 .php 页面(我可以在其中处理数据和编辑数据库等),这对我来说更有意义 - 但这样我就不能包含任何 Wordpress 功能处理我的数据并做我需要做的事情。就像我会包含几行 Wordpress 以允许我访问这些功能,但是这样我就无法处理数据然后重定向用户。
目前为了解决这个问题,我正在处理数据并使用元刷新来重定向,我知道这很糟糕!
希望这是有道理的 :) 任何帮助将不胜感激!