首页 >php教程 >php手册 >PHP利用header跳转失效的解决方法,phpheader跳转失效

PHP利用header跳转失效的解决方法,phpheader跳转失效

WBOY
WBOY原创
2016-06-13 09:22:551249浏览

PHP利用header跳转失效的解决方法,phpheader跳转失效

本文实例讲述了PHP利用header跳转失效的解决方法,分享给大家供大家参考。具体方法分析如下:

一、问题:

今天header(\"Location: $url\"),以往跳转总是可以的,今天却不动,只是输出结果,以往自己要确认检查,$url的值获取的是否正确,所以在前面加了echo $url;来调试用,结果就导致了header函数的无效.

二、解决方法:

在PHP中用header("location:test.php")进行跳转要注意以下几点:

1、location和“:”号间不能有空格,否则会出错.//phpfensi.com

2、在用header前不能有任何的输出,包括include的页面中标签“?>”后不能有空格.

3、header后的PHP代码还会被执行.

PHP的 header 跳转之前不能有任何内容输出,因为PHP开始执行的时候就已经向浏览器送出HTTP头信息,之后就不再允许更改了.

但是如果必须要在输出之后再处理header信息的话可以使用 ob_start() ob_end_flush() 来缓存一下要发送的内容,等到header继续再发送内容.

或者一个更简单的办法,修改php.ini,找到 output_buffering=Off 修改为 output_buffering=4096.

希望本文所述对大家的PHP程序设计有所帮助。

php header()页面跳转的问题

如果你确定要使用post方式提交的话,那是一件很复杂的事,因为需要php来模拟post提交,你可以使用 fsockopen 来处理,具体方案我可以教你。
另外一种方法就是使用get方案,相对来言,就是一种超简单,直接转向的时候,把post来的数据转成get方式header过去就行了。
还有一种解决方案就是在前段使用ajax来处理。在a页面ajax提交数据到b.php,根据返回值代表不通过验证时,然后把页面用js转到b.php,如果返回值代表验证通过,就再次把当前post的数据再提交一次到c.php。
 

php header不可以跳转,在本地机器上没问题,但上传到服务器上就有问题,跳转不了,非要刷新才跳转到指定页

编码问题 把charset=UTF-8改为charset=GB2312
 

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn