评论分页,中间件

This commit is contained in:
tao 2021-12-21 16:34:33 +08:00
parent 2c87e42dff
commit 78b3697dea
9 changed files with 77 additions and 25 deletions

View File

@ -2,9 +2,9 @@
> TaoLer是一个简单迅捷的轻论坛系统适用于个人或组织区域型信息交流发布平台。 > TaoLer是一个简单迅捷的轻论坛系统适用于个人或组织区域型信息交流发布平台。
* 官网https://www.aieok.com:8443 * 官网https://www.aieok.com
* 版本TaoLer 1.8.15 * 版本TaoLer 1.8.16
* 日期2021.12.15 * 日期2021.12.21
webman版新架构已适配90% webman版新架构已适配90%
@ -45,6 +45,7 @@
1. 首选确保满目使用环境要求php > 7.2, mysql > 5.7.3 1. 首选确保满目使用环境要求php > 7.2, mysql > 5.7.3
2. git下载https://gitee.com/toogee/TaoLer 2. git下载https://gitee.com/toogee/TaoLer
github https://www.github.com/taoser/TaoLer
官网下载https://www.aieok.com 官网下载https://www.aieok.com
#### 引导安装 #### 引导安装

View File

@ -1,5 +1,8 @@
<?php <?php
return [ return [
// 检测安装
\app\middleware\Install::class,
// 权限检测
app\middleware\Auth::class, app\middleware\Auth::class,
]; ];

View File

@ -81,6 +81,7 @@ class Article extends BaseController
//文章详情页 //文章详情页
public function detail($id) public function detail($id)
{ {
$page = input('page') ? input('page') : 1;
$article = new ArticleModel(); $article = new ArticleModel();
$artDetail = $article->getArtDetail($id); $artDetail = $article->getArtDetail($id);
$arId = $artDetail->cate->id; $arId = $artDetail->cate->id;
@ -89,10 +90,11 @@ class Article extends BaseController
// 抛出 HTTP 异常 // 抛出 HTTP 异常
throw new \think\exception\HttpException(404, '异常消息'); throw new \think\exception\HttpException(404, '异常消息');
} }
$comments = $artDetail->comments()->where('status',1)->order(['cai'=>'asc','create_time'=>'asc'])->paginate(10); $comments = $artDetail->comments()->where('status',1)->order(['cai'=>'asc','create_time'=>'asc'])->paginate(['list_rows'=>10, 'page'=>$page]);
//$comment = new \app\common\model\Comment(); //$comment = new \app\common\model\Comment();
//$comments = $comment->getComment($id); //$comments = $comment->getComment($id);
//dump($comments); //dump($comments);
$count = $comments->total();
$artDetail->inc('pv')->update(); $artDetail->inc('pv')->update();
$pv = Db::name('article')->field('pv')->where('id',$id)->value('pv'); $pv = Db::name('article')->field('pv')->where('id',$id)->value('pv');
$download = $artDetail->upzip ? download($artDetail->upzip,'file') : ''; $download = $artDetail->upzip ? download($artDetail->upzip,'file') : '';
@ -106,7 +108,7 @@ class Article extends BaseController
//分类钻展赞助 //分类钻展赞助
$ad_comm = $ad->getSliderList(7); $ad_comm = $ad->getSliderList(7);
View::assign(['article'=>$artDetail,'pv'=>$pv,'comments'=>$comments,'artHot'=>$artHot,'ad_art'=>$ad_artImg,'ad_comm'=>$ad_comm,$download,'jspage'=>'jie']); View::assign(['article'=>$artDetail,'pv'=>$pv,'comments'=>$comments,'artHot'=>$artHot,'ad_art'=>$ad_artImg,'ad_comm'=>$ad_comm,$download,'count'=>$count,'page'=>$page,'jspage'=>'jie']);
return View::fetch('article/'.$tpl.'/detail'); return View::fetch('article/'.$tpl.'/detail');
} }

View File

@ -1,8 +1,11 @@
<?php <?php
return [ return [
\app\middleware\LoginCookie::class, // 检测安装
\app\middleware\Install::class, \app\middleware\Install::class,
// 记住登录
\app\middleware\LoginCookie::class,
// 浏览日志
\app\middleware\Browse::class, \app\middleware\Browse::class,
// 多语言加载 // 多语言加载
\think\middleware\LoadLangPack::class, \think\middleware\LoadLangPack::class,

View File

@ -7,7 +7,8 @@ class Install
{ {
public function handle($request, \Closure $next) public function handle($request, \Closure $next)
{ {
if(!file_exists('./install.lock')){ $app = app('http')->getName();
if($app !== 'install' && !file_exists('./install.lock')){
return redirect('/install/index'); return redirect('/install/index');
//header('Location:'.Request::domain().'/install.php'); //header('Location:'.Request::domain().'/install.php');
} }

View File

@ -16,13 +16,13 @@ return [
// 数据库类型 // 数据库类型
'type' => 'mysql', 'type' => 'mysql',
// 服务器地址 // 服务器地址
'hostname' => '127.0.0.1', 'hostname' => '',
// 数据库名 // 数据库名
'database' => 'taoler', 'database' => '',
// 用户名 // 用户名
'username' => 'taoler', 'username' => '',
// 密码 // 密码
'password' => 'taoler2022', 'password' => '',
// 端口 // 端口
'hostport' => '3306', 'hostport' => '3306',
// 数据库连接参数 // 数据库连接参数

View File

@ -191,7 +191,7 @@ var collectionFind = "{:url('Collection/find')}",
langCollection = "{:lang('collection')}", langCollection = "{:lang('collection')}",
langCancelCollection = "{:lang('cancel collection')}"; langCancelCollection = "{:lang('cancel collection')}";
layui.use(['fly', 'face','colorpicker','plyr'], function(){ layui.use(['fly', 'face','colorpicker','plyr', 'laypage'], function(){
var $ = layui.jquery var $ = layui.jquery
,form = layui.form ,form = layui.form
,fly = layui.fly ,fly = layui.fly
@ -199,6 +199,7 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
,plyr = layui.plyr; ,plyr = layui.plyr;
var laytpl = layui.laytpl; var laytpl = layui.laytpl;
var uid = layui.cache.user.uid; var uid = layui.cache.user.uid;
var laypage = layui.laypage;
//tpl模板给发布时间赋值 //tpl模板给发布时间赋值
$('div.user-questions').children('span.user-post-time').each(function(){ $('div.user-questions').children('span.user-post-time').each(function(){
@ -281,6 +282,26 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
return false; return false;
}); });
//执行一个laypage实例
laypage.render({
elem: 'pages' //注意,这里的 test1 是 ID不用加 # 号
,count: {$count} //数据总数,从服务端得到
,limit: 10
,curr : {$page}
//获取起始页
,jump: function(obj, first){
//首次不执行
if(!first){
var page = obj.curr;
var url = "{:url('article/detail',['id'=>$article.id])}"
$.post(url,{"page":page},function(){
window.location.href = url + '?page=' + page + '#flyReply';
});
}
}
});
//下载 //下载
$('#zip-download').click(function (){ $('#zip-download').click(function (){
var id = "{$article.id}"; var id = "{$article.id}";

View File

@ -112,7 +112,7 @@
</li> </li>
{/volist} {/volist}
</ul> </ul>
<div style="text-align: center">{$comments|raw}</div> <div style="text-align: center" id="pages"></div>
{if condition="$article.is_reply == 1"} {if condition="$article.is_reply == 1"}
<div class="layui-form layui-form-pane"> <div class="layui-form layui-form-pane">
<div class="layui-form-item layui-form-text"> <div class="layui-form-item layui-form-text">
@ -180,7 +180,7 @@ var collectionFind = "{:url('Collection/find')}",
langCollection = "{:lang('collection')}", langCollection = "{:lang('collection')}",
langCancelCollection = "{:lang('cancel collection')}"; langCancelCollection = "{:lang('cancel collection')}";
layui.use(['fly', 'face','colorpicker','plyr'], function(){ layui.use(['fly', 'face','colorpicker','plyr', 'laypage'], function(){
var $ = layui.jquery var $ = layui.jquery
,form = layui.form ,form = layui.form
,fly = layui.fly ,fly = layui.fly
@ -188,6 +188,7 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
,plyr = layui.plyr; ,plyr = layui.plyr;
var laytpl = layui.laytpl; var laytpl = layui.laytpl;
var uid = layui.cache.user.uid; var uid = layui.cache.user.uid;
var laypage = layui.laypage;
//tpl模板给发布时间赋值 //tpl模板给发布时间赋值
$('div.detail-hits').children('span.post-time').each(function(){ $('div.detail-hits').children('span.post-time').each(function(){
@ -258,6 +259,26 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
return false; return false;
}); });
//执行一个laypage实例
laypage.render({
elem: 'pages' //注意,这里的 test1 是 ID不用加 # 号
,count: {$count} //数据总数,从服务端得到
,limit: 10
,curr : {$page}
//获取起始页
,jump: function(obj, first){
//首次不执行
if(!first){
var page = obj.curr;
var url = "{:url('article/detail',['id'=>$article.id])}"
$.post(url,{"page":page},function(){
window.location.href = url + '?page=' + page + '#flyReply';
});
}
}
});
//下载 //下载
$('#zip-download').click(function (){ $('#zip-download').click(function (){
var id = "{$article.id}"; var id = "{$article.id}";

View File

@ -9,7 +9,7 @@
<div class="layui-container"> <div class="layui-container">
<div class="layui-row layui-col-space15"> <div class="layui-row layui-col-space15">
<div class="layui-col-md8"> <div class="layui-col-md9">
<!--首页幻灯--> <!--首页幻灯-->
<div class="fly-panel"> <div class="fly-panel">
{include file="public/index-slider" /} {include file="public/index-slider" /}
@ -40,7 +40,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="layui-col-md4"> <div class="layui-col-md3">
{:hook('signhook', ['id'=>1])} {:hook('signhook', ['id'=>1])}
<!--温馨通道--> <!--温馨通道-->