thinkphp跳轉目前頁的方法:1、在index/login下新建一個login.html頁面;2、新建一個login控制器;3、透過「protected function success(){...} 」判斷跳轉是否成功;4、開啟「dispatch_jump.tpl」檔案;5、修改「config.php」下面的設定碼即可。
本教學操作環境:Windows7系統、ThinkPHP5版、Dell G3電腦。
ThinkPHP5之頁面跳轉
頁面跳轉的方法
首先可以用簡單的success和error方法來實作
#1.在index/login下新建一個login.html頁面
<!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.新建一個login控制器
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('登陆失败'); } } }
系統的success方法說明
/** * 操作成功跳转的快捷方法 * @access protected * @param mixed $msg 提示信息 * @param string $url 跳转的 URL 地址 * @param mixed $data 返回的数据 * @param int $wait 跳转等待时间 * @param array $header 发送的 Header 信息 * @return void * @throws HttpResponseException */ protected function success($msg = '', $url = null, $data = '', $wait = 3, array $header = []) {}
跳轉成功的頁面效果:success()方法會有一個等待時間的介面,然後跳到/index/index,同樣error()方法同樣有個等待介面
修改跳轉介面上面顯示登陸成功的介面可能不符合我們的需求,所以需要修改這個模板介面
1.修改模板介面,首先需要找到這個模板介面,開啟config.php我們可以看到有下面兩行程式碼
// 默认跳转页面对应的模板文件 'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', //成功跳转的界面 'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl', //失败跳转的界面
透過上面的程式碼我們可以看出,不管是成功跳轉還是失敗跳轉,他都是同一個介面,dispatch_jump.tpl,我們透過目錄thinkphp\tpl\dispatch_jump .tpl找到這個文件
然後修改文件的程式碼,下面我貼出關鍵的資訊
<!--根据code来判断显示成功还是失败,1代表成功,0代表失败--> <?php switch ($code) {?> <?php case 1:?> <h1>:)</h1> <!--这行代码是我自己在static下添加的一张成功的笑脸图片,路径是根据入口文件的位置来定义图片的位置,入口文件和static是同一级目录--> <img src="/static/xiao.jpg" style="max-width:90%" height="100px" alt="thinkphp怎麼跳轉目前頁" > <p><?php echo(strip_tags($msg));?></p> <?php break;?> <?php case 0:?> <h1>:(</h1> <!--这行代码是我自己在static下添加的一张失败的哭脸图片,路径是根据入口文件的位置来定义图片的位置,入口文件和static是同一级目录--> <img src="/static/ku.jpg" style="max-width:90%" height="100px" alt="thinkphp怎麼跳轉目前頁" > <p><?php echo(strip_tags($msg));?></p> <?php break;?> <?php } ?>
2.修改設定文件,修改為自己寫的介面,我們在thinkphp\tpl目錄下新建兩個文件,一個success.tpl和一個error.tpl文件,修改config.php下面的配置代碼
//原来指定的路径 // 默认跳转页面对应的模板文件 '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是一個非常優秀的前端框架,裡面已經寫好很多效果來讓我們調用,例如輪播圖,導航列等等,而且優先移動端適配
#推薦學習:《thinkPHP視頻教程》
以上是thinkphp怎麼跳轉目前頁的詳細內容。更多資訊請關注PHP中文網其他相關文章!