This article mainly introduces an overview of the success and error methods of ThinkPHP page jump. Friends who need it can refer to it.
ThinkPHP itself provides the success method and error method to implement page jumps with prompt information. Function, which can realize the effect of displaying prompt information and jumping after adding data. The success method is used to prompt after a successful operation, and the error is used to prompt after a failed operation. The usage methods of the two are exactly the same. The success method is used for explanation below.
1. Success method
The success method syntax is as follows:
success(message, ajax)
Parameter description message is optional. Page prompt information. ajax optional. Whether to submit via AJAX, the default is false.
If submitted via AJAX, the success method will call the ajaxReturn method to return information.
success method example:
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 template
The success method calls the success.html template in the public directory, that is, TPL/Public/ by default. In this template, receive the following template variables:
Template variable description:
$waitSecond jump waiting time, in seconds, the default success is 1 second, error is 3 seconds.
$jumpUrl jump target page address, the default is $_SERVER["HTTP_REFERER"] (the page before this operation).
$msgTitle operation title. Note: Assigning this variable will not take effect. Success will take the _OPERATION_SUCCESS_ configuration information in the language package, and error will take the _OPERATION_FAIL_ configuration information.
$message page prompt information.
$status operation status, default 1 means success, 0 means failure, the specific rules can also be defined by the project itself.
Success actually calls the display() method to output the success.html template. Therefore, the success.html template can be modified according to the actual situation, such as adding more information prompts or making CSS art settings to meet actual needs. The above template variables are just some reference variables.
$jumpUrl variable description:
If the $jumpUrl variable does not exist, the default jump address is $_SERVER["HTTP_REFERER"]. References for some common jump page writing methods:
// 本模块其他方法如index 方法 $this->assign("jumpUrl","index"); // 带上参数 $this->assign("jumpUrl","index/section/".$section); //其他模块 $this->assign("jumpUrl","__APP__/User/index");
If you want to use the U method to generate the jump target address, you can change the URL attribute in success.html to the U method form:
<meta http-equiv='Refresh'content='{$waitSecond};URL={:U($jumpUrl)}'>
In the operation, the value assigned to the $jumpUrl template variable is also To change it to be consistent with the U method, please refer to the official manual "ThinkPHPU Method to Dynamically Generate URL Address" for details.
2. Error method
The usage of the error method is exactly the same as that of the success method, but it should be noted that ThinkPHP's default configuration error method still calls the success.html template. If you need to define a separate template for the error method, you can modify the system default configuration ThinkPHP/Common/convention.php file as follows:
'TMPL_ACTION_ERROR' => 'Public:success',// 默认错误跳转对应的模板文件
or redefine it in the project configuration.
In Web development, when you need to jump to a page and display prompt information, you can directly use the above success and error methods provided by ThinkPHP page jump.
Related recommendations:
Detailed explanation of PHP page encoding declaration method (header or meta)
The above is the detailed content of Overview of ThinkPHP page jump success and error methods. For more information, please follow other related articles on the PHP Chinese website!