ThinkPHP跳转与重定向的区分详解


页面提醒音信

$data[‘info’] = $message; // 提醒新闻内容
$data[‘status’] = $status; // 状态 如果是success是1 error 是0
$data[‘url’] = $jumpUrl; // 成功还是不当的跳转地址
重定向
Controller类的redirect方法能够实现页面包车型客车重定向功能。
redirect方法的参数用法和U函数的用法一致(参谋U科雷傲L生成都部队分),例如:
//重定向到New模块的Category操作

                            $this->show($content);

干什么$this->error()和$this->success()跳转到同二个模板文件?
 Thinkphp的默许配置错误和成功是三个模板,能够在计划内部加多
 ‘TMPL_ACTION_E奥迪Q3ROHighlander’=>’Public:error’
//暗许错误跳转到Public文件夹下边包车型地铁error.html文件
 ‘TMPL_ACTION_SUCCESS’=>’Public:success’
//私下认可成功跳转到对应的Public文件夹上面的success.html文件

$waitSecond

浏览器以为 , 当前的 U昂科拉L 无效 , 被再一次定位到新的 URL 上 .

 

也得以行使项目里面包车型地铁沙盘文件

浏览器会 记录当前的 U卡宴L 和 新的 U奥迪Q5L 在呼吁历史记录中.

 

$this->error(“输出的错误音信”); //查询战败后回来上一页

语法完毕, 都以服务器向浏览器发出重定向响应指令 ,

                   必要在TPL上面新建二个your文件夹作为模板宗旨文件夹

$message

通过响应头:

                           
$this->display(‘./Public/error.html’,’utf-8′,’text/xml’);

跳转页面地址

模板文件能够使用模板标签,并且可以应用下边包车型地铁模板变量:

                   ‘__JS__’=>__ROOT__.’/Public/Js’,

操作标题

// 操作完毕3秒后跳转到 /Article/index
$this->success(‘操作实现’,’/Article/index’,3);
// 操作退步5秒后跳转到 /Article/error
$this->error(‘操作战败’,’/Article/error’,5);

                   ‘TMPL_FILE_DEPR’=>’_’,//修改模板文件目录档期的顺序

$this->redirect(“Index/list”); //直接跳转,不带计时后跳转

地点的用法是栖息5秒后跳转到New模块的category操作,并且展现页面跳转中字样,重定向后会改换近来的U凯雷德L地址。
如果您独自是想重定向要三个钦命的U奥德赛L地址,而不是到某些模块的操作方法,可以直接利用redirect函数重定向,例如:
//重定向到钦定的U福睿斯L地址
redirect(‘/New/category/cate_id/2’, 5, ‘页面跳转中…’)
Redirect函数的第三个参数是二个UTucsonL地址。
调节器的redirect方法和redirect函数的界别在于前者是用U福睿斯L规则定义跳转地址,后者是一个从头到尾的U哈弗L地址。

__GROUP__:会替换成当前分组的U揽胜极光L地址 (不含域名)

操作景况 1表示成功 0 表示战败 具体还足以由项目自个儿定义规则

变量 含义
$msgTitle 操作标题
$message 页面提醒音讯
$status 操作处境 1表示成功 0 表示失利 具体还足以由项目作者定义规则
$waitSecond 跳转等待时间 单位为秒
$jumpUrl 跳转页面地址
success和error方法会自动判定当前呼吁是还是不是属于Ajax哀告,即便属于Ajax央求则会调用ajaxReturn方法重返新闻。
ajax方式上面,success和error方法会封装下边包车型大巴多少重临:

 

 代码如下

私下认可的等候时间success方法是1秒,error方法是3秒

                   2.得以带参数

跳转等待时间 单位为秒

语法达成: 在浏览器层面, 修改浏览器的 location .href 来实现的
:location.href=href;

三、模板中的赋值      (珍重)

//暗许错误跳转对应的模版文件
‘TMPL_ACTION_ERROR’ => ‘Public:error’;
//暗中认可成功跳转对应的沙盘文件
‘TMPL_ACTION_SUCCESS’ => ‘Public:success’;

回退, 是可以回退到 , 当前的 U中华VL 上的 . ( 无论 success, 和 error
都是同一)

                  

模板文件能够行使模板标签,并且能够动用下边包车型客车模板变量:

重定向:


}else{

跳转:

                  
模板文件夹下[TPL]/[分组文件夹/][模板蕉点文件夹/]和模块名同名的文本夹[Index]/和艺术名同名的文件[index].html(.tpl)

$msgTitle

例子

         c、模板核心

$res=$User->where(array(’name’=’lone’))->select 
//查询name是lone

success和error方法都能够对应的模板,暗中认可的装置是四个法子对应的沙盘都是:

 

那3中放到的跳转都很好用,而且升高了网页的频率!

header(‘Refresh: ‘)

                           
$this->display(本模块文件夹下的别的模板文件);

使用格局很粗大略。

$User = M(‘User’); //实例化User对象
$result = $User->add($data);
if($result){
//设置成功后跳转页面的地点,默许的回到页面是$_SERVER[‘HTTP_REFERER’]
$this->success(‘新扩张成功’, ‘User/list’);
} else {
//错误页面包车型大巴暗中认可跳转页面是回来前一页,日常无需安装
$this->error(‘新扩展失利’);
}
success和error方法的第二个参数表示提示讯息,第三个参数表示跳转地址,第多个参数是跳转时间(单位为秒),比如:

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注