您好,登錄后才能下訂單哦!
小編給大家分享一下php如何實現簡單跳轉提示,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
在PHP開發中,尤其是MVC框架或者項目中,會碰到很多跳轉情況,比如:登錄成功或失敗后的跳轉等等。
以下以MVC框架開發中為基礎,示例講解:
在基礎控制器類中:Conrtoller.class.php
<?php /** * 基礎控制器類 */ class Controller { /** * 跳轉 * $url 目標url * $info 提示信息 * $time 等待時間(單位秒) */ protected function jump($url,$info=NULL,$time=3) { //判斷是立即跳轉還是刷新跳轉 if(is_null($info)) { //立即跳轉 header('location:'. $url); die; } else { //刷新跳轉,給出提示 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 h3 {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> <h3>提示信息</h3> <p> <strong>$info</strong><br /> 頁面在<span id="second">$time</span>秒后會自動跳轉,或點擊<a id="tiao" href="$url">立即跳轉</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基礎控制器類后,就可以調用定義的跳轉提示。
<?php /** * 后臺管理員控制器(登錄、注銷、管理員的增刪改查等) */ class AdminController extends Controller { /** * 展示登錄表單動作 */ public function loginAction() { // 載入當前的視圖文件 $this->display('login.html'); } /** * 后臺注銷功能 */ public function logoutAction() { @session_start(); // 刪除相關會話數據 unset($_SESSION['adminInfo']); // 刪除會話數據區 session_destroy(); // 立即跳轉到登錄頁面 $this->jump('index.php?c=Admin&a=login','您已退出后臺登錄!'); } }
當然,這里是在MVC中實現的,你也可以把jump()單獨提出來進行使用。
附上一個效果圖:
以上是php如何實現簡單跳轉提示的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。