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

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

WBOY
WBOYOriginal
2016-06-13 09:22:551249Durchsuche

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
 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn