Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP头函数不工作_Php_Redirect - Fatal编程技术网

PHP头函数不工作

PHP头函数不工作,php,redirect,Php,Redirect,我曾经使用此函数从一个php页面重定向到另一个: header( 'Location: student.php?cnp='.$_REQUEST['name']) ; 在我的本地主机中,它确实可以工作,但如果在internet上测试它,它不会重定向。 我还尝试给出完整的路径(如http://.../student.php?...)但它仍然不起作用。有人知道我为什么要这样做吗?尝试添加session\u write\u close()之前和退出()之后: session_write_close()

我曾经使用此函数从一个php页面重定向到另一个:

header( 'Location: student.php?cnp='.$_REQUEST['name']) ;
在我的本地主机中,它确实可以工作,但如果在internet上测试它,它不会重定向。
我还尝试给出完整的路径(如
http://.../student.php?...
)但它仍然不起作用。有人知道我为什么要这样做吗?

尝试添加
session\u write\u close()之前和
退出()
之后:

session_write_close();

header( 'Location: student.php?cnp='.$_REQUEST['name']) ;

exit();
刚才在评论中看到了错误消息。添加
ob_start()
到页面顶部,在
会话_start()下。
如果有的话。

尝试以下操作:

header('Location: http://www.example.com/someurl.php', true);
第二个参数替换以前的位置标头(如果有)

还要检查您收到的HTTP响应代码(应该是30X)

如果没有任何帮助,您可以始终通过javascript重定向:

echo "<script>window.top.location='http://www.example.com/someurl.php'</script>"
echo”窗口。顶部。位置=http://www.example.com/someurl.php'"

这不是很专业,但即使已经发送了邮件头,也能正常工作。

我尝试了这个解决方案,但没有成功

header('Location: http://www.example.com/someurl.php', true);
因此,我建议人们采用以下两种可能的解决方案,这两种方案对我很有效

使用
JS

echo "<script>window.top.location='http://www.example.com/someurl.php'</script>"
这两个人都为我工作。但由于某些原因,header这个东西在网络上不起作用,但在本地运行得非常好。我将使用元解决方案

您的
标题()
无法工作,因为标题已发送到浏览器。 在页面开头使用
ob_start()
(甚至在DOCTYPE声明之前)。最后,使用
ob\u end\u flush()


这个建议对我来说也有同样的问题。将此函数放在代码的顶部:

function move_to(){
header('Location: student.php?cnp='.$_REQUEST['name']);
}
并使用以下命令调用该函数:

move_to()

顺便说一句,我不会因此而受到表扬。我刚刚在:

找到它,您是否收到任何错误消息?也许“无法修改标题信息-标题已由…发送”??不…它只会保留在同一页上!检查您的脚本。您是否在header语句之后立即退出脚本?@madrugada:读取错误消息。在调用header()之前,您不能进行任何输出,否则您将得到警告和失败的标题。我没有任何会话…我是否仍要添加您所说的内容?是的,您仍应添加它。把它放在主文件的顶部。谢谢大家,它成功了。这很奇怪,但在看了这里[1]之后,我发现之前不应该有任何空白[1]我知道这是一个老问题,但当我来到这里时,我想其他人也会有。我也有同样的问题,但提供的解决方案没有帮助。经过一个小时的搜索,我发现一位同事用不同的编辑器修改了文件,将编码改为“UTF8 with BOM”。在这种编码方式下发送带有index.php的位置头是不可能的。在将其转换回UTF8(无BOM)后,一切工作与以前一样。我希望这些信息能帮助其他人节省时间。
function move_to(){
header('Location: student.php?cnp='.$_REQUEST['name']);
}
move_to()