找回密碼
 註冊
搜索
查看: 2276|回復: 0

[教學] PHP利用header跳轉失效的解決方法

[複製鏈接]
發表於 2021-3-8 22:18:13 | 顯示全部樓層 |閱讀模式
 
Push to Facebook
一、問題:

header("Location: $url"),以往跳轉總是可以的,今天卻不動,只是輸出結果,以往自己要確認檢查,$url的值獲取的是否正確,所以在前面加了echo $url;來除錯用,結果就導致了header函式的無效.

二、解決方法:

在PHP中用header("location:test.php")進行跳轉要注意以下幾點:

1、location和“:”號間不能有空格,否則會出錯.//downcc.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程式設計有所幫助。

 
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

Archiver|手機版|小黑屋|TShopping

GMT+8, 2025-4-30 15:07 , Processed in 0.020934 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回復 返回頂部 返回列表