PHP的简单跳转提示的实现详解

yipeiwu_com5年前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 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>秒后会自动跳转,或点击<a id="tiao" href="$url" rel="external nofollow" >立即跳转</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的简单跳转提示的实现详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【宜配屋www.yipeiwu.com】网站的支持!

相关文章

PHP中数字检测is_numeric与ctype_digit的区别介绍

is_numeric:检测是否为数字字符串,可为负数和小数 ctype_digit:检测字符串中的字符是否都是数字,负数和小数会检测不通过 注意,参数一定要是字符串,如果不是字符串,则会...

PHP学习的技巧和学习的要素总结

1、适合PHP学习者的学习道路: (1) 了解HTML/CSS/JS、、网页根本元素,完毕阶段可自行制造简略的网页,对元素特点相对了解 (2) 了解动态言语的概念和运做机制,了解根本的P...

浅析php面向对象public private protected 访问修饰符

浅析php面向对象public private protected 访问修饰符

PHP中有三种访问修饰符,分别是:     public(公共的、默认)     protected(受保...

在WordPress的后台中添加顶级菜单和子菜单的函数详解

在WordPress的后台中添加顶级菜单和子菜单的函数详解

添加设置页面-add_menu_page函数 add_menu_page(),这个函数是往后台添加顶级菜单先,也就是和“外观”、“插件”等一样的顶级菜单。 函数介绍如下: <&...

超级实用的7个PHP代码片段分享

1、超级简单的页面缓存 如果你的工程项目不是基于 CMS 系统或框架,打造一个简单的缓存系统将会非常实在。下面的代码很简单,但是对小网站而言能切切实实解决问题。 复制代码 代码如下: &...