php实现简单跳转提示的示例代码

阅读量:26
2021-04-18

本篇文章给大家带来的内容是关于虚拟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 "Content-Type" content="/html; charset=utf-8" />
<title>提示信息</title>
<style type='/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="https://www.php.cn/$url">立即跳转</a>
    </p>
</div>
<script type="/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('');
    }
    /**
     * 后台注销功能
     */
    public function logoutAction() {
        @session_start();
        // 删除相关会话数据
        unset($_SESSION['adminInfo']);
        // 删除会话数据区
        session_destroy();
        // 立即跳转到登录页面
        $this->jump('index.php?c=Admin&a=login','您已退出后台登录!');
    }
}

当然,这里是在MVC中实现的,你也可以把jump()单独提出来进行使用。

附上一个效果图:

声明:本文转载于:博客园,如有侵犯,请联系admin@删除

THE END

发表评论

相关推荐

  • 有关fgets()函数的文章推荐10篇

    以下正文:这篇文章主要介绍了PHP文件读写操作相关函数总结,本文总结了fwrite()、fread()、fgets()、fgetc()、file()、readf ...

    阅读量:65
    2021-04-19
  • php递归与无限分类实例详解

    这篇文章主要介绍了php实现递归与无限分类的方法,涉及php的递归操作技巧,需要的朋友可以参考下本文实例讲述了php实现递归与 ...

    阅读量:45
    2021-04-19
  • CI框架中zip类的使用

    CI框架自带的zip类简单实用,本文就来简单说一下ci框架的zip类的使用,需要的朋友可以参考下CI框架自带的zip类简单实用,本文 ...

    阅读量:44
    2021-04-18
  • SWFUpload插件上传文件的代码

    这篇文章主要介绍了文件上传之SWFUpload插件(代码),实现此代码主要分为两部分:1.前台文件和 2.后台文件upload.php,需要 ...

    阅读量:42
    2021-04-18
  • 关于destoon的URL Rewrite设置方法

    这篇文章主要介绍了destoon的URL Rewrite(伪静态)设置方法,需要的朋友可以参考下1、如果您的服务器支持.htaccess,则无需设 ...

    阅读量:47
    2021-04-18