TP3.2自定義錯誤頁面、成功頁面及異常頁面

ThinkPHP 作為一款輕量級PHP開發(fā)框架,它為我們提供了自帶的錯誤頁面、異常頁面等信息提示頁面,比如下面的代碼會出現(xiàn)這樣的提示:
$this->error('驗(yàn)證碼錯誤!');

我們可以看到,自帶的頁面并不美觀,所以我們需要自定義這些頁面,ThinkPHP 為我們提供了自定義提示頁面這樣一種功能。

在配置文件中添加如下配置信息:

/* 錯誤頁面模板 */
'TMPL_ACTION_ERROR'     =>  MODULE_PATH.'View/Public/error.html', // 默認(rèn)錯誤跳轉(zhuǎn)對應(yīng)的模板文件 根據(jù)自己實(shí)際存放頁面的路徑寫就可以
'TMPL_ACTION_SUCCESS'   =>  MODULE_PATH.'View/Public/success.html', // 默認(rèn)成功跳轉(zhuǎn)對應(yīng)的模板文件
'TMPL_EXCEPTION_FILE'   =>  MODULE_PATH.'View/Public/exception.html',// 異常頁面的模板文件

把這段配置信息放入到當(dāng)前模型的 /Conf/config.php 中,然后在當(dāng)前模型的 View 目錄下創(chuàng)建 Public 文件夾,并在里面自定義 error.html success.html 及 exception.html 即可。

下面是一個簡單的錯誤頁面模板:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>跳轉(zhuǎn)提示</title>
<style type="text/css">
*{ padding: 0; margin: 0; }
body{ background: #290C0C; font-family: '微軟雅黑'; color: #fff; font-size: 16px; }
.system-message{ padding: 24px 48px; }
.system-message h1{ font-size: 80px; font-weight: normal; line-height: 120px; margin-bottom: 12px }
.system-message .jump{ padding-top: 10px;margin-bottom:20px}
.system-message .jump a{ color: #333;}
.system-message .success,.system-message .error{ line-height: 1.8em; font-size: 36px }
.system-message .detail{ font-size: 12px; line-height: 20px; margin-top: 12px; display:none}
#wait {
    font-size:46px;
}
#btn-stop,#href{
    display: inline-block;
    margin-right: 10px;
    font-size: 16px;
    line-height: 18px;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    border: 0 none;
    background-color: #8B0000;
    padding: 10px 20px;
    color: #fff;
    font-weight: bold;
    border-color: transparent;
    text-decoration:none;
}
 
#btn-stop:hover,#href:hover{
    background-color: #ff0000;
}
</style>
</head>
<body>
<div class="system-message">
<h1>抱歉,出錯啦!</h1>
<p class="error"><?php echo($error); ?></p>
<p class="detail"></p>
<p class="jump">
<b id="wait"><?php echo($waitSecond); ?></b> 秒后頁面將自動跳轉(zhuǎn)
</p>
<div>
    <a id="href" id="btn-now" href="<?php echo($jumpUrl); ?>">立即跳轉(zhuǎn)</a> 
    <button id="btn-stop" type="button" onclick="stop()">停止跳轉(zhuǎn)</button> 
    <a id="href" id="btn-now" href="<?php echo(U('Public/logout')); ?>">重新登錄</a> 
</div>
</div>
<script type="text/javascript">
(function(){
 var wait = document.getElementById('wait'),href = document.getElementById('href').href;
 var interval = setInterval(function(){
        var time = --wait.innerHTML;
        if(time <= 0) {
            location.href = href;
            clearInterval(interval);
        };
     }, 1000);
  window.stop = function (){
         console.log(111);
            clearInterval(interval);
 }
 })();
</script>
</body>
</html>

我們把上面的代碼放到自定義 error.html 頁面中,然后再看最開始的錯誤提示頁面就會變成下面這樣:

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,695評論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,324評論 25 708
  • 老友最近天天折磨我的神經(jīng) 如果有一天我去四院了 那一定是老友把我逼瘋的 最近老友瘋狂的愛著一個人(下文開始以貨代稱...
    楊小小羊閱讀 217評論 22 1
  • 晚睡,早起,送懂事長去上學(xué)。 打開混沌大學(xué)APP,快看漫畫陳安妮分享運(yùn)營心得,剖析年輕人的秘密,一組驚人的數(shù)字背后...
    械密閱讀 274評論 1 3
  • 上午,學(xué)校新來了家長帶來特殊的孩子,聽說普通小學(xué)學(xué)校教師不喜歡他不要他,他學(xué)什么都不知道,連一年級都不會認(rèn)字!...
    b26b2e4a1f9b閱讀 195評論 0 0

友情鏈接更多精彩內(nèi)容