本文目錄一覽:
- 1、php header 網頁跳轉的問題
- 2、thinkphp使用header跳轉功能參數
- 3、php header跳轉失敗
- 4、header()出錯不能跳轉,提示已經發送過header,PHP
- 5、php header 函數不能正常跳轉的幾種解決辦法
- 6、PHP Header用於頁面跳轉要注意的幾個問題總結
php header 網頁跳轉的問題
出這個錯誤是因為 echo header(“location:liebiao.php”); 發送頭之前不能有任何輸出,空格也不行,你需要將header(…)之前的空格去掉,或者其他輸出的東西去掉,如果他上面include其他文件了,你還要檢查其他文件里是否有輸出,如果你能找到輸出的地方也可以,在輸出內容之前加ob_start()
如果header的前面echo刪除了還是報一樣的錯誤,換個瀏覽器試試
thinkphp使用header跳轉功能參數
thinkphp只是php一個框架了,但如果要實現頁面跳轉並不能使用header函數來實現了,下面小編來給大家介紹在thinkphp頁面跳轉方法總結吧。
通過這段時間thinkphp的應運,經常會遇到一些帶有提示信息的跳轉頁面,操作成功或者操作錯誤頁面,並且自動跳轉到另外一個目標頁面。系統的Action類內置了兩個跳轉方法success和error,用於頁面跳轉提示,而且可以支持ajax提交。
使用方法很簡單。
代碼如下 複製代碼
$User=M(『user』)//實例化user表
$res=$User-where(array(』name』=』lone』))-select //查詢name是lone
If($res){
$this-success(「輸出的提示信息」,」/User/list/」);
//查詢成功後跳轉的頁面第二個參數是模板路徑地址
}else{
$this-error(「輸出的錯誤信息」); //查詢失敗後返回上一頁
}
$this-redirect(「Index/list」); //直接跳轉,不帶計時後跳轉
這3中內置的跳轉都很好用,而且提高了網頁的效率!
Success和error方法都有對應的模板,並且是可以設置的,默認的設置是兩個方法對應的模板都是:
代碼如下 複製代碼
//默認錯誤跳轉對應的模板文件
‘TMPL_ACTION_ERROR’ = THINK_PATH . ‘Tpl/dispatch_jump.tpl’;
//默認成功跳轉對應的模板文件
‘TMPL_ACTION_SUCCESS’ = THINK_PATH . ‘Tpl/dispatch_jump.tpl’;
也可以使用項目內部的模板文件
代碼如下 複製代碼
//默認錯誤跳轉對應的模板文件
‘TMPL_ACTION_ERROR’ = ‘Public:error’;
//默認成功跳轉對應的模板文件
‘TMPL_ACTION_SUCCESS’ = ‘Public:success’;
模板文件可以使用模板標籤,並且可以使用下面的模板變數:
模板文件可以使用模板標籤,並且可以使用下面的模板變數:
jquery171008461078754635143=”26″
$msgTitle 操作標題
$message 頁面提示信息
$status 操作狀態 1表示成功 0 表示失敗 具體還可以由項目本身定義規則
$waitSecond 跳轉等待時間 單位為秒
$jumpUrl 跳轉頁面地址 success和error方法會自動判斷當前請求是否屬於Ajax請求,如果屬於Ajax請求則會調用ajaxReturn方法返回信息,具體可以參考後面的AJAX返回部分。
php header跳轉失敗
在PHP中用header(“location:test.php”)進行跳轉要注意以下幾點,有助於解決一些新手經常遇到的問題 1、location和「:」號間不能有空格,否則會出錯。 2、在用header前不能有任何的輸出。 3、header後的PHP代碼還會被執行。
header()出錯不能跳轉,提示已經發送過header,PHP
沒有登陸時,你這麼寫的話,就沒有輸出的值了吧,會直接跳轉到地址,那麼地址你應該直接寫你想跳轉到地方,比如header(“localtion:login.php”);
php header 函數不能正常跳轉的幾種解決辦法
PHP頁面跳轉一、header()函數
header()函數是PHP中進行頁面跳轉的一種十分簡單的方法。header()函數的主要功能是將HTTP協議標頭(header)輸出到瀏覽器。
header()函數的定義如下:
void header (string string [,bool replace [,int http_response_code]])
可選參數replace指明是替換前一條類似標頭還是添加一條相同類型的標頭,默認為替換。
第二個可選參數http_response_code強制將HTTP相應代碼設為指定值。 header函數中Location類型的標頭是一種特殊的header調用,常用來實現頁面跳轉。注意:1.location和「:」號間不能有空格,否則不會跳轉。
2.在用header前不能有任何的輸出。
3.header後的PHP代碼還會被執行。例如,將瀏覽器重定向到冠威博客
?php
//重定向瀏覽器
header(“Location: “);
//確保重定向後,後續代碼不會被執行
exit;
?
PHP頁面跳轉二、Meta標籤
Meta標籤是HTML中負責提供文檔元信息的標籤,在PHP程序中使用該標籤,也可以實現頁面跳轉。 若定義http-equiv為refresh,則打開該頁面時將根據content規定的值在一定時間內跳轉到相應頁面。
若設置content=”秒數;url=網址”,則定義了經過多長時間後頁面跳轉到指定的網址。例如,使用meta標籤實現疫苗後頁面自動跳轉到冠威博客。
meta http-equiv=”refresh” content=”1;url=”
例如,以下程序meta.php實現在該頁面中停留一秒後頁面自動跳轉到。
?php
$url = “”; ?
html
head
meta http-equiv=”refresh” content=”1; url= ?php echo $url; ?”
/head
body
頁面只停留一秒……
/body
/html
PHP頁面跳轉三、JavaScript(常用、推薦)
例如,此代碼可以放在程序中的任何合法位置。
?php
$url = “”;
echo “script language=’javascript’ type=’text/javascript'”;
echo “window.location.href=’$url'”;
echo “/script”;
?
PHP Header用於頁面跳轉要注意的幾個問題總結
在PHP中用header(“location:test.php”)進行跳轉要注意以下幾點,有助於解決一些新手經常遇到的問題
1、location和「:」號間不能有空格,否則會出錯。
2、在用header前不能有任何的輸出。
3、header後的PHP代碼還會被執行。
下面是和asp中重定向response.redirect的比較:
例1:
response.redirect “../test.asp”
header(“location:../test.php”);
兩者區別:
asp的redirect函數可以在向客戶發送頭文件後起作用.
如
htmlhead/headbody
%response.redirect “../test.asp”%
/body/html
查是php中下例代碼會報錯:
htmlhead/headbody
?
header(“location:../test.php”);
?
/body/html
只能這樣:
?
header(“location:../test.php”);
?
htmlhead/headbody…/body/html
即header函數之前不能向客戶發送任何數據.
例2:
asp中
htmlhead/headbody
%
response.redirect “../a.asp”
response.redirect “../b.asp”
%
/body/html
結果是重定向a.asp文件.
php呢?
?
header(“location:../a.php”);
header(“location:../b.php”);
?
htmlhead/headbody/body/html
我們發現它重定向b.php.
原來在asp中執行redirect後不會再執行後面的代碼.
而php在執行header後,繼續執行下面的代碼.
在這方面上php中的header重定向不如asp中的重定向.有時我們要重定向後,不能執行後面的代碼:
一般地我們用
if(…)
header(“…”);
else
{
…
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/253701.html