日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線(xiàn)咨詢(xún)客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

ThinkPHP是一個(gè)開(kāi)源的PHP開(kāi)發(fā)框架,它提供了強(qiáng)大的MVC模式支持,讓開(kāi)發(fā)者能夠快速開(kāi)發(fā)穩(wěn)健的Web應(yīng)用。在開(kāi)發(fā)Web應(yīng)用中,經(jīng)常需要進(jìn)行頁(yè)面跳轉(zhuǎn),例如用戶(hù)登錄成功后需要跳轉(zhuǎn)到用戶(hù)界面。本文將介紹如何使用ThinkPHP進(jìn)行頁(yè)面跳轉(zhuǎn),并封裝一個(gè)跳轉(zhuǎn)頁(yè)函數(shù)。

一、使用ThinkPHP進(jìn)行頁(yè)面跳轉(zhuǎn)

ThinkPHP提供了兩個(gè)內(nèi)置函數(shù)可以進(jìn)行頁(yè)面跳轉(zhuǎn):

    redirect()函數(shù)

redirect()函數(shù)用于跳轉(zhuǎn)到指定的URL地址。它的語(yǔ)法如下:

redirect('url', '參數(shù)', '狀態(tài)碼')->send();

登錄后復(fù)制

其中:

url:要跳轉(zhuǎn)的URL地址。參數(shù):GET方式的參數(shù),可以是數(shù)組或者字符串。狀態(tài)碼:HTTP狀態(tài)碼,例如302表示重定向,301表示永久重定向。

例如,要跳轉(zhuǎn)到http://www.example.com/user/index頁(yè)面,代碼如下:

redirect('http://www.example.com/user/index')->send();

登錄后復(fù)制

    success()和error()函數(shù)

success()和error()函數(shù)用于在頁(yè)面跳轉(zhuǎn)時(shí)顯示一個(gè)提示信息。成功提示信息使用success()函數(shù),失敗提示信息使用error()函數(shù)。它們的語(yǔ)法如下:

success('提示信息', '跳轉(zhuǎn)URL', '等待時(shí)間')->send();
error('提示信息', '跳轉(zhuǎn)URL', '等待時(shí)間')->send();

登錄后復(fù)制

其中:

提示信息:需要顯示的信息,可以是字符串或數(shù)組。跳轉(zhuǎn)URL:要跳轉(zhuǎn)的URL地址,可以省略。等待時(shí)間:等待時(shí)間,單位為秒,默認(rèn)為1秒,可以省略。

例如,要顯示一個(gè)成功提示信息并跳轉(zhuǎn)到http://www.example.com/user/index頁(yè)面,代碼如下:

success('登錄成功', 'http://www.example.com/user/index')->send();

登錄后復(fù)制

二、封裝跳轉(zhuǎn)頁(yè)函數(shù)

為了方便重復(fù)使用,我們可以將頁(yè)面跳轉(zhuǎn)進(jìn)行封裝。下面是一個(gè)簡(jiǎn)單的跳轉(zhuǎn)頁(yè)函數(shù)代碼:

/**
 * 跳轉(zhuǎn)頁(yè)函數(shù)
 *
 * @param string $url 要跳轉(zhuǎn)的URL地址
 * @param string $message 信息提示
 * @param int $waitTime 等待時(shí)間
 * @return void
 */
function jump($url, $message = '', $waitTime = 1) {
    if (empty($url)) {
        exit('錯(cuò)誤:未指定跳轉(zhuǎn)URL地址!');
    }
    if (!empty($message)) {
        $message = htmlspecialchars($message);
    }
    if ($waitTime == 0) {
        header("Location: {$url}");
        exit;
    }
    $css = <<<EOF
    <style type="text/css">
    .jump {
        text-align:center;
        padding-top:5%;
        font-family: 'Microsoft Yahei', Verdana, Arial;
        font-size:16px;
    }
    .jump h3 {
        font-size:24px;
        font-weight:bold;
    }
    </style>
EOF;
    $html = <<<EOF
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>跳轉(zhuǎn)提示</title>
{$css}
</head>
<body>
    <div class="jump">
        <h3>跳轉(zhuǎn)提示</h3>
        <p>{$message}</p>
        <p>等待時(shí)間:<span id="wait_time">{$waitTime}</span>秒</p>
        <p><a href="{$url}">立即跳轉(zhuǎn)</a></p>
    </div>
    <script type="text/javascript">
        var wait_time = {$waitTime};
        var interval = setInterval(function(){
            if(wait_time > 0) {
                wait_time--;
                document.getElementById('wait_time').innerHTML = wait_time;
            } else {
                clearInterval(interval);
                window.location.href = '{$url}';
            }
        }, 1000);
    </script>
</body>
</html>
EOF;
    echo $html;
}

登錄后復(fù)制

使用以上的封裝函數(shù)可以在控制器中實(shí)現(xiàn)以下代碼:

public function login() {
    if($this->request->post()){
        $data = $this->request->post();
        // 驗(yàn)證碼驗(yàn)證

        $user = UserModel::where('username', $data['username'])->find();
        if(!$user || $user->password != $data['password']){
            jump(url('login/index'), '用戶(hù)名或密碼錯(cuò)誤', 3);
        } else {
            jump(url('user/index'), '登錄成功', 3);
        }
    }
    return $this->fetch();
}

登錄后復(fù)制

以上就是使用ThinkPHP進(jìn)行頁(yè)面跳轉(zhuǎn)并封裝跳轉(zhuǎn)頁(yè)函數(shù)的教程。使用封裝函數(shù)可以方便地在不同的控制器中重復(fù)使用。

以上就是thinkphp跳轉(zhuǎn)頁(yè)封裝教程的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注www.xfxf.net其它相關(guān)文章!

分享到:
標(biāo)簽:
用戶(hù)無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定