ThinkPHP页面跳转success与error方法概述
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相关内容感兴趣的读者可查看本站专题:《thinkphp入门教程》、《thinkphp模板操作技巧总结》、《thinkphp常用方法总结》、《smarty模板入门基础教程》及《php模板技术总结》。
希望本文所述对大家基于thinkphp框架的php程序设计有所帮助。
推荐阅读
-
ThinkPHP页面跳转success与error方法概述
-
ThinkPHP页面跳转success与error方法概述
-
Thinkphp自定义美化success和error提示跳转页面代码实例
-
thinkphp3.2自定义success及error跳转页面
-
thinkphp3.2自定义success及error跳转页面
-
ThinkPHP页面跳转success与error方法概述
-
ThinkPHP页面跳转success与error方法概述_PHP
-
Thinkphp自定义美化success和error提示跳转页面代码实例
-
ThinkPHP页面跳转success与error方法概述_PHP
-
ThinkPHP页面跳转success与error方法概述_php实例