A-A+

thinkphp使用smarty后 success()和error()方法如何支持

2015年03月07日 thinkphp开发 暂无评论 阅读 104 次

thinkphp使用smarty后 success()和error()方法如何支持?
3.2版本 smarty中success方法不能用了怎么办?解决方法为将 /ThinkPhp/Library/Think/Controller.class.php,

内的success方法代码修改如下:

 

protected function success($message='',$jumpUrl='',$ajax=false) {

$waitSecond =3;
$info =<<<eof
<!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>跳转提示</title>
<style type="text/css">
*{ padding: 0; margin: 0; }
body{ background: #fff; font-family: '微软雅黑'; color: #333; font-size: 16px; }
.system-message{ padding: 24px 48px; }
.system-message h1{ font-size: 100px; font-weight: normal; line-height: 120px; margin-bottom: 12px; }
.system-message .jump{ padding-top: 10px}
.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}
</style>
</head>
<body>
<div class="system-message">
<?php if(isset($message)) {?>
<h1>:)</h1>
<p class="success">$message></p>
<?php }else{?>
<h1>:(</h1>
<p class="error">$error</p>
<?php }?>
<p class="detail"></p>
<p class="jump">
页面自动 <a id="href" href="$jumpUrl">跳转</a> 等待时间: <b id="wait">$waitSecond</b>
</p>
</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);
})();
</script>
</body>
</html>
eof;
echo $info;

exit;

//$this->dispatchJump($message,1,$jumpUrl,$ajax);
}

另:尽量不要修改thinkphp源文件,如何修改可以覆盖父类Model?待续

标签:

给我留言

Copyright © web前端技术开发个人博客 保留所有权利  京ICP备14060653号 Theme  Ality

用户登录