在PHP開發(fā)中,尤其是MVC框架或者項目中,會碰到很多跳轉(zhuǎn)情況,比如:登錄成功或失敗后的跳轉(zhuǎn)等等。
以下以MVC框架開發(fā)中為基礎(chǔ),示例講解:
在基礎(chǔ)控制器類中:Conrtoller.class.php
?php
/**
* 基礎(chǔ)控制器類
*/
class Controller {
/**
* 跳轉(zhuǎn)
* $url 目標(biāo)url
* $info 提示信息
* $time 等待時間(單位秒)
*/
protected function jump($url,$info=NULL,$time=3) {
//判斷是立即跳轉(zhuǎn)還是刷新跳轉(zhuǎn)
if(is_null($info)) {
//立即跳轉(zhuǎn)
header('location:'. $url);
die;
} else {
//刷新跳轉(zhuǎn),給出提示
echo TIAOZHUAN
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
title>提示信息/title>
style type='text/css'>
* {margin:0; padding:0;}
div {width:390px; height:287px; border:1px #09C solid; position:absolute; left:50%; margin-left:-195px; top:10%;}
div h2 {width:100%; height:30px; line-height:30px; background-color:#09C; font-size:14px; color:#FFF; text-indent:10px;}
div p {height:120px; line-height:120px; text-align:center;}
div p strong {font-size:26px;}
/style>
div>
h2>提示信息/h2>
p>
strong>$info/strong>br />
頁面在span id="second">$time/span>秒后會自動跳轉(zhuǎn),或點擊a id="tiao" href="$url" rel="external nofollow" >立即跳轉(zhuǎn)/a>
/p>
/div>
script type="text/javascript">
var url = document.getElementById('tiao').href;
function daoshu(){
var scd = document.getElementById('second');
var time = --scd.innerHTML;
if(time=0){
window.location.href = url;
clearInterval(mytime);
}
}
var mytime = setInterval("daoshu()",1000);
/script>
TIAOZHUAN;
die;
}
}
}
在MVC的自動加載中,將Controller.class.php進行自動加載注冊
通過不同控制器類繼承上面的Controller.class.php基礎(chǔ)控制器類后,就可以調(diào)用定義的跳轉(zhuǎn)提示。
?php
/**
* 后臺管理員控制器(登錄、注銷、管理員的增刪改查等)
*/
class AdminController extends Controller {
/**
* 展示登錄表單動作
*/
public function loginAction() {
// 載入當(dāng)前的視圖文件
$this->display('login.html');
}
/**
* 后臺注銷功能
*/
public function logoutAction() {
@session_start();
// 刪除相關(guān)會話數(shù)據(jù)
unset($_SESSION['adminInfo']);
// 刪除會話數(shù)據(jù)區(qū)
session_destroy();
// 立即跳轉(zhuǎn)到登錄頁面
$this->jump('index.php?c=Admina=login','您已退出后臺登錄!');
}
}
當(dāng)然,這里是在MVC中實現(xiàn)的,你也可以把jump()單獨提出來進行使用。
附上一個效果圖:
以上所述是小編給大家介紹的PHP的簡單跳轉(zhuǎn)提示的實現(xiàn)詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- PHP PDO數(shù)據(jù)庫操作預(yù)處理與注意事項
- php生成word并下載代碼實例
- PHP-FPM的配置與優(yōu)化講解
- php-fpm中max_children的配置
- 使用Zookeeper分布式部署PHP應(yīng)用程序
- 淺談PHP無限極分類原理
- 詳解PHP隊列的實現(xiàn)
- PHP精確到毫秒秒殺倒計時實例詳解
- PHP封裝的數(shù)據(jù)庫模型Model類完整示例【基于PDO】
- PHP標(biāo)準(zhǔn)庫(PHP SPL)詳解