>  기사  >  PHP 프레임워크  >  thinkphp에서 현재 페이지로 이동하는 방법

thinkphp에서 현재 페이지로 이동하는 방법

藏色散人
藏色散人원래의
2022-12-12 09:21:282149검색

현재 페이지로 이동하는 Thinkphp 방법: 1. index/login 아래에 새 login.html 페이지를 만듭니다. 2. 새 로그인 컨트롤러를 만듭니다. 3. "보호된 함수 성공(){...}을 통해 점프를 판단합니다. " 성공 여부; 4. "dispatch_jump.tpl" 파일을 엽니다. 5. "config.php"에서 구성 코드를 수정합니다.

thinkphp에서 현재 페이지로 이동하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, ThinkPHP 버전 5, Dell G3 컴퓨터.

ThinkPHP5 페이지 점프

페이지 점프 방법

먼저 간단한 성공 및 오류 방법을 사용하여 달성할 수 있습니다

1 index/login

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>登陆</title>
</head>
<body>
    <!--{:url(&#39;check&#39;)}  :提交到本页面的控制器下的check方法-->
    <form action="{:url(&#39;check&#39;)}" 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>

에 새 login.html 페이지를 만듭니다. 새로운 로그인 컨트롤러의 성공 방법에 대한 설명

namespace app\index\controller;
use think\Controller;
//继承Controller
class Login extends Controller
{
    public function index(){
        return view();
    }
//    判断登陆成功失败的逻辑
    public function check(){
        $user=$_POST[&#39;username&#39;];
        $pwd=$_POST[&#39;password&#39;];
        if($user==&#39;admin&#39; && $pwd==&#39;123&#39;){
//            如果成功则跳到index/index页面
            $this->success(&#39;登陆成功&#39;,url(&#39;/index/index&#39;));
        }else{
            $this->error(&#39;登陆失败&#39;);
        }
    }
}

System

 /**
     * 操作成功跳转的快捷方法
     * @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 = &#39;&#39;, $url = null, $data = &#39;&#39;, $wait = 3, array $header = [])
    {}

성공적인 점프의 페이지 효과: 성공() 메서드는 대기 시간 인터페이스를 갖게 되며, 그런 다음 /index/index로 점프합니다. 동일한 오류( ) 메소드에도 대기 인터페이스가 있습니다

thinkphp에서 현재 페이지로 이동하는 방법

점프 인터페이스를 수정하세요. 성공적인 로그인을 표시하는 인터페이스가 우리의 요구 사항을 충족하지 못할 수 있으므로 이 템플릿 인터페이스를 수정해야 합니다

1. 템플릿 인터페이스를 열고 config.php를 엽니다. 다음 두 줄의 코드를 볼 수 있습니다

// 默认跳转页面对应的模板文件
    &#39;dispatch_success_tmpl&#39;  => THINK_PATH . &#39;tpl&#39; . DS . &#39;dispatch_jump.tpl&#39;,    //成功跳转的界面
    &#39;dispatch_error_tmpl&#39;    => THINK_PATH . &#39;tpl&#39; . DS . &#39;dispatch_jump.tpl&#39;,    //失败跳转的界面

위의 코드를 통해 점프 성공 여부와 동일한 인터페이스인 dispatch_jump.tpl임을 알 수 있습니다. thinkphptpldispatch_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. 구성 파일을 수정하고 작성한 인터페이스에 맞게 두 개의 새 파일을 만듭니다. thinkphptpl 디렉토리, 하나의 성공.tpl 및 하나의 오류 tpl 파일, config.php

//原来指定的路径
// 默认跳转页面对应的模板文件
    &#39;dispatch_success_tmpl&#39;  => THINK_PATH . &#39;tpl&#39; . DS . &#39;dispatch_jump.tpl&#39;,
    &#39;dispatch_error_tmpl&#39;    => THINK_PATH . &#39;tpl&#39; . DS . &#39;dispatch_jump.tpl&#39;
//修改为自定义的文件路径
     &#39;dispatch_success_tmpl&#39;  => THINK_PATH . &#39;tpl&#39; . DS . &#39;success.tpl&#39;,
     &#39;dispatch_error_tmpl&#39;    => THINK_PATH . &#39;tpl&#39; . DS . &#39;error.tpl&#39;

bootstrap에서 구성 코드를 수정하십시오. 캐러셀, 네비게이션 바 등, 모바일 적응이 우선시됩니다

추천 학습: "thinkPHP 비디오 튜토리얼"

위 내용은 thinkphp에서 현재 페이지로 이동하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.