Thinkphp method to jump to the current page: 1. Create a new login.html page under index/login; 2. Create a new login controller; 3. Use "protected function success(){...} "Determine whether the jump is successful; 4. Open the "dispatch_jump.tpl" file; 5. Modify the configuration code under "config.php".

The operating environment of this tutorial: Windows 7 system, ThinkPHP version 5, Dell G3 computer.
ThinkPHP5 page jump
Methods for page jump
First, you can use simple success and error methods to achieve it
1. Create a new login.html page under index/login
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登陸</title>
</head>
<body>
<!--{:url('check')} :提交到本頁面的控制器下的check方法-->
<form action="{:url('check')}" method="post">
<p>
賬號:<input type="text" name="username" id="username">
</p>
<P>
密碼:<input type="text" name="password" id="password">
</P>
<p>
<input type="submit" value="提交">
<input type="reset" value="重置">
</p>
</form>
</body>
</html>
2. Create a new login controller
namespace app\index\controller;
use think\Controller;
//繼承Controller
class Login extends Controller
{
public function index(){
return view();
}
// 判斷登陸成功失敗的邏輯
public function check(){
$user=$_POST['username'];
$pwd=$_POST['password'];
if($user=='admin' && $pwd=='123'){
// 如果成功則跳到index/index頁面
$this->success('登陸成功',url('/index/index'));
}else{
$this->error('登陸失敗');
}
}
}
System success method description
/**
* 操作成功跳轉(zhuǎn)的快捷方法
* @access protected
* @param mixed $msg 提示信息
* @param string $url 跳轉(zhuǎn)的 URL 地址
* @param mixed $data 返回的數(shù)據(jù)
* @param int $wait 跳轉(zhuǎn)等待時間
* @param array $header 發(fā)送的 Header 信息
* @return void
* @throws HttpResponseException
*/
protected function success($msg = '', $url = null, $data = '', $wait = 3, array $header = [])
{}
Jump successful The page effect: the success() method will have a waiting time interface, and then jump to /index/index, the error() method also has a waiting interface

Modification The interface that shows successful login on the jump interface may not meet our needs, so we need to modify this template interface
1. To modify the template interface, first we need to find this template interface, open config.php and we can see There are the following two lines of code
// 默認(rèn)跳轉(zhuǎn)頁面對應(yīng)的模板文件
'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', //成功跳轉(zhuǎn)的界面
'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', //失敗跳轉(zhuǎn)的界面
We can see from the above code that whether it is a successful jump or a failed jump, it is the same interface, dispatch_jump.tpl, we pass the directory thinkphp\tpl\dispatch_jump .tpl find this file
and then modify the code of the file. I will post the key information below
<!--根據(jù)code來判斷顯示成功還是失敗,1代表成功,0代表失敗-->
<?php switch ($code) {?>
<?php case 1:?>
<h1>:)</h1>
<!--這行代碼是我自己在static下添加的一張成功的笑臉圖片,路徑是根據(jù)入口文件的位置來定義圖片的位置,入口文件和static是同一級目錄-->
<img src="/static/imghw/default1.png" data-src="/static/xiao.jpg" class="lazy" style="max-width:90%" height="100px" alt="How to jump to the current page in thinkphp" >
<p><?php echo(strip_tags($msg));?></p>
<?php break;?>
<?php case 0:?>
<h1>:(</h1>
<!--這行代碼是我自己在static下添加的一張失敗的哭臉圖片,路徑是根據(jù)入口文件的位置來定義圖片的位置,入口文件和static是同一級目錄-->
<img src="/static/imghw/default1.png" data-src="/static/ku.jpg" class="lazy" style="max-width:90%" height="100px" alt="How to jump to the current page in thinkphp" >
<p><?php echo(strip_tags($msg));?></p>
<?php break;?>
<?php } ?>
2. Modify the configuration file and change it to the interface written by yourself. We are in the thinkphp\tpl directory Create two new files, a success.tpl and an error.tpl file, modify the configuration code below config.php
//原來指定的路徑
// 默認(rèn)跳轉(zhuǎn)頁面對應(yīng)的模板文件
'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl',
'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl'
//修改為自定義的文件路徑
'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'success.tpl',
'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'error.tpl'
bootstrap is a very excellent front-end framework, and many effects have been written in it to allow us to Calls, such as carousels, navigation bars, etc., and mobile terminal adaptation is given priority
Recommended learning: "thinkPHP Video Tutorial"
The above is the detailed content of How to jump to the current page in thinkphp. For more information, please follow other related articles on the PHP Chinese website!