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: http://www.baidu.com "); //確保重定向后,后續代碼不會被執行 exit; ?>
PHP頁面跳轉二、Meta標簽
Meta標簽是HTML中負責提供文檔元信息的標簽,在PHP程序中使用該標簽,也可以實現頁面跳轉。 若定義http-equiv為refresh,則打開該頁面時將根據content規定的值在一定時間內跳轉到相應頁面。
若設置content="秒數;url=網址",則定義了經過多長時間后頁面跳轉到指定的網址。例如,使用meta標簽實現疫苗后頁面自動跳轉到js代碼官網。
代碼如下:
< meta http-equiv = "refresh" content = "1;url=http://www.jsdaima.com/" >
例如,以下程序meta.php實現在該頁面中停留一秒后頁面自動跳轉到http://www.sina.com/。
代碼如下:
< ?php $ url = "http://http://www.sina.com/" ; ?> < html > < head > < meta http-equiv = "refresh" content ="1; url = < ?php echo $url; ?> " > < /head > < body > 頁面只停留一秒…… < /body > < /html
PHP頁面跳轉三、JavaScript
例如,此代碼可以放在程序中的任何合法位置。
代碼如下:
< ?php $ url = "http://bbs.lampbrother.net" ; echo " < script language = 'javascript' type = 'text/javascript' > "; echo " window.location.href = '$url' "; echo " < /script > "; ?>
PHP代碼實現偽登錄頁面跳轉:
test05.PHP代碼:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Examples</title> <style> div{ margin: auto; text-align: center; } </style> </head> <body style=" margin: auto;"> <div> <form action="test06.php" method="post"> <p>賬號: <input type="text" name="uname"></p> <p>密碼: <input type="password" name="pwd"></p> <p> <input type="submit" value="登錄"> <input type="submit" value="注冊"> </p> </form> </div> </body> </html>
test06.PHP代碼:
<?php header('ContentType=text/html charset=utf-8'); //文檔聲明 ?> <?php //判斷接受數據是否為空 if (empty($_POST['uname']) || empty($_POST['pwd'])) { //重定向(若傳輸數據為空則返回登錄頁) header('location:http://localhost/test/test05.php'); } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Examples</title> <style> /* 簡單頁面布局 */ div{ width: 1200px; margin: auto; border: 1px solid #ccc; height: 50px; background-color: #CCC; } span{ float: right; margin-right:50px; font-size: 14px; text-align: center; line-height: 50px; } </style> </head> <body> <div> <span> <?php //輸出用戶名 echo '賬戶: '.($_REQUEST['uname']); ?> </span> </div> </body> </html>
效果如下圖所示: