首頁 >後端開發 >php教程 >ThinkPHP頁面跳轉success與error方法概述

ThinkPHP頁面跳轉success與error方法概述

不言
不言原創
2018-06-06 15:03:432142瀏覽

這篇文章主要介紹了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().&#39;[<AHREF="javascript:history.back()">返回</A>]&#39;);
}
}

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=&#39;Refresh&#39;content=&#39;{$waitSecond};URL={:U($jumpUrl)}&#39;>

在操作中,對$jumpUrl 模板變數的賦值,對應的也若要變更為與U 方法一致,詳情可參考官方手冊《ThinkPHPU 方法動態產生URL 位址》。
2、error 方法
error方法用法與sucess 方法完全一致,但要注意的是,ThinkPHP 預設配置error方法呼叫的仍是success.html 模板。如果需要對error 方法單獨定義模板,可以修改系統預設配置ThinkPHP/Common/convention.php檔案如下:

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

或在專案配置裡進行重新定義。
Web開發中,在需要頁面跳轉並顯示提示訊息時,可以直接使用ThinkPHP 頁面跳轉提供的上述success 與error 方法。

相關推薦:

PHP 頁面編碼宣告方法詳解(header或meta)

以上是ThinkPHP頁面跳轉success與error方法概述的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn