當前位置:才華齋>計算機>php語言>

PHP利用header跳轉失效的解決方法

php語言 閱讀(2.55W)

主要介紹了PHP利用header跳轉失效的解決方法,歸納了這類問題的注意事項,非常具有實用價值,需要的朋友可以參考下,就跟隨本站小編一起去了解下吧,想了解更多相關資訊請持續關注我們應屆畢業生考試網!

PHP利用header跳轉失效的解決方法

本文例項講述了PHP利用header跳轉失效的解決方法,分享給大家供大家參考。具體方法分析如下:

  一、問題:

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

  二、解決方法:

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

1、location和“:”號間不能有空格,否則會出錯.//

2、在用header前不能有任何的輸出,包括include的頁面中標籤“?>”後不能有空格.

3、header後的PHP程式碼還會被執行.

PHP的' header 跳轉之前不能有任何內容輸出,因為PHP開始執行的時候就已經向瀏覽器送出HTTP頭資訊,之後就不再允許更改了.

但是如果必須要在輸出之後再處理header資訊的話可以使用 ob_start() ob_end_flush() 來快取一下要傳送的內容,等到header繼續再發送內容.

或者一個更簡單的辦法,修改,找到 output_buffering=Off 修改為 output_buffering=4096.

  複製程式碼 程式碼如下:

<?php

@mysql_connect("localhost", "root","1981427") //選擇資料庫之前需要先連線資料庫服務

or die("資料庫伺服器連線失敗");

@mysql_select_db("test") //選擇資料庫mydb

or die("資料庫不存在或不可用");

$query = @mysql_query("select * from tablename1") //執行SQL語句

or die("SQL語句執行失敗");

?>

  複製程式碼 程式碼如下:

<?php

@mysql_connect("localhost", "root","1981427") //選擇資料庫之前需要先連線資料庫伺服器

or die("資料庫伺服器連線失敗");

@mysql_select_db("test") //選擇資料庫mydb

or die("資料庫不存在或不可用");

$query = @mysql_query("insert into tablename1 values('4', 'Judy','456')")

or die("SQL語句執行失敗");

?>

  複製程式碼 程式碼如下:

<?php

@mysql_connect("localhost", "root","1981427") //選擇資料庫之前需要先連線資料庫伺服器

or die("資料庫伺服器連線失敗");

@mysql_select_db("test") //選擇資料庫mydb

or die("資料庫不存在或不可用");

$query = @mysql_query("select * from tablename1") //執行SQL語句

or die("SQL語句執行失敗");

echo mysql_result($query, 0, 'username'); //輸出第0行的name列

?>