ThinkPHP页面跳转success与error方法概述


Posted in PHP onJune 25, 2014

ThinkPHP自身提供了success方法与error方法用于实现带提示信息的页面跳转功能,可实现添加数据后显示提示信息并跳转的效果。success 方法用于操作成功后的提示,error 用于操作失败后的提示,二者使用方法完全一致,下面以success 方法来进行说明。
1、success方法
 
success方法语法如下:
success(message, ajax) 
参数说明message可选。页面提示信息。ajax可选。是否AJAX 方式提交,默认为false 。
如果是AJAX 方式提交的话,success 方法会调用ajaxReturn 方法返回信息。

success方法实例:

public function insert(){
// 省略部分其他代码
if($lastInsId = $Dao->add()){
// 页面跳转目标地址
$this->assign("jumpUrl","index");
$this->success("插入数据id 为:$lastInsId");
}else{
header("Content-Type:text/html; charset=utf-8");
exit($Dao->getError().'[<AHREF="javascript:history.back()">返回</A>]');
}
}

success 模板
 
success 方法默认调用公共目录即TPL/Public/ 下的success.html 模板。在该模板中,接收如下模板变量:
 
模板变量说明:
$waitSecond跳转等待时间,单位为秒,默认success 1 秒,error 3 秒。
$jumpUrl跳转目标页面地址,默认为$_SERVER["HTTP_REFERER"] (本操作前一页)。
$msgTitle操作标题。注:赋值该变量不会生效,success 会取语言包里_OPERATION_SUCCESS_ 配置信息,error 取_OPERATION_FAIL_ 配置信息。
$message页面提示信息。
$status操作状态,默认1 表示成功,0 表示失败,具体还可以由项目本身定义规则。
 
success 实际仍是调用display() 方法输出success.html 模板。因此可以根据实际情况对success.html 模板进行修改如添加更多信息提示或者进行CSS 美工设置等以满足实际需求,上面这些模板变量只是一些参考变量。
 
$jumpUrl 变量说明:
$jumpUrl 变量如果不存在,默认跳转地址是$_SERVER["HTTP_REFERER"] ,一些常见的跳转页面写法参考:
 

// 本模块其他方法如index 方法
$this->assign("jumpUrl","index");
// 带上参数
$this->assign("jumpUrl","index/section/".$section);
//其他模块
$this->assign("jumpUrl","__APP__/User/index");

 
如果要使用U 方法生成跳转目标地址,可在success.html 中变更URL 属性为U 方法形式:

<meta http-equiv='Refresh'content='{$waitSecond};URL={:U($jumpUrl)}'>

 
在操作中,对$jumpUrl 模板变量的赋值,相应的也要更改为与U 方法一致,详情可参考官方手册《ThinkPHPU 方法动态生成URL 地址》。
  
2、error 方法
 
error方法用法与sucess 方法完全一致,只是需要注意的是,ThinkPHP 默认配置error方法调用的仍是success.html 模板。如果需要对error 方法单独定义模板,可以修改系统默认配置ThinkPHP/Common/convention.php文件如下:

'TMPL_ACTION_ERROR' => 'Public:success',// 默认错误跳转对应的模板文件

或在项目配置里进行重新定义。
Web开发中,在需要页面跳转并显示提示信息时,可以直接使用ThinkPHP 页面跳转提供的上述success 与error 方法。如果不需要提示而是直接重定向页面时,可参考手册《ThinkPHP redirect 重定向》部分。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php中看实例学正则表达式
Dec 25 PHP
PHP SQLite类
May 07 PHP
PHP zlib扩展实现页面GZIP压缩输出
Jun 17 PHP
解析php中const与define的应用区别
Jun 18 PHP
PHP函数getenv简介和使用实例
May 12 PHP
PHP图片自动裁切应付不同尺寸的显示
Oct 16 PHP
smarty内置函数foreach用法实例
Jan 22 PHP
php通过修改header强制图片下载的方法
Mar 24 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
Jul 21 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
Nov 10 PHP
Lumen timezone 时区设置方法(慢了8个小时)
Jan 20 PHP
PHP手机短信验证码实现流程详解
May 17 PHP
修改ThinkPHP缓存为Memcache的方法
Jun 25 #PHP
ThinkPHP的截取字符串函数无法显示省略号的解决方法
Jun 25 #PHP
ThinkPHP多表联合查询的常用方法
Mar 24 #PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
Jun 25 #PHP
ThinkPHP查询中的魔术方法简述
Jun 25 #PHP
Thinkphp实现MySQL读写分离操作示例
Jun 25 #PHP
Zend Framework页面缓存实例
Jun 25 #PHP
You might like
回帖脱衣服的图片实现代码
2014/02/15 PHP
PHP 中魔术常量的实例详解
2017/10/26 PHP
PHP实现将base64编码字符串转换成图片示例
2018/06/22 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
2020/01/26 PHP
js继承 Base类的源码解析
2008/12/30 Javascript
JavaScript 基础知识 被自己遗忘的
2009/10/15 Javascript
在模板页面的js使用办法
2010/04/01 Javascript
jquery实现的鼠标拖动排序Li或Table
2014/05/04 Javascript
jQuery中$.click()无效问题分析
2015/01/29 Javascript
js采用concat和sort将N个数组拼接起来的方法
2016/01/21 Javascript
jquery自动补齐功能插件flexselect用法示例
2016/08/06 Javascript
基于dataset的使用和图片延时加载的实现方法
2017/12/11 Javascript
Vue框架之goods组件开发详解
2018/01/25 Javascript
vue配置font-awesome5的方法步骤
2019/01/27 Javascript
nodejs搭建本地服务器并访问文件操作示例
2019/05/11 NodeJs
js微信分享接口调用详解
2019/07/23 Javascript
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
vue中使用WX-JSSDK的两种方法(推荐)
2020/01/18 Javascript
微信小程序实现滑动操作代码
2020/04/23 Javascript
解决Antd Table组件表头不对齐的问题
2020/10/27 Javascript
Python3.x中自定义比较函数
2015/04/24 Python
django接入新浪微博OAuth的方法
2015/06/29 Python
Python黑魔法Descriptor描述符的实例解析
2016/06/02 Python
Python的Flask站点中集成xhEditor文本编辑器的教程
2016/06/13 Python
python微信跳一跳系列之自动计算跳一跳距离
2018/02/26 Python
如何利用python查找电脑文件
2018/04/27 Python
Python实现获取前100组勾股数的方法示例
2018/05/04 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
python使用装饰器作日志处理的方法
2019/07/11 Python
python 进程间数据共享multiProcess.Manger实现解析
2019/09/23 Python
乌克兰电子和家用电器商店:Foxtrot
2019/07/23 全球购物
德国受欢迎的旅游和休闲网站:lastminute.de
2019/09/23 全球购物
中文专业自荐书
2014/06/29 职场文书
七年级作文之游记
2019/12/11 职场文书
Python实现随机生成迷宫并自动寻路
2021/06/13 Python
python数字转对应中文的方法总结
2021/08/02 Python