当前位置: >首页>新闻列表>惠州网站设计,tp6的带参数的分页问题
相信做过网站设计的朋友都知道,什么是分页,什么时候要用到分页。顾名思义,分页就是跟我们读书时候,翻开的页码是一样的意思。只是电脑或者手机等这些电子设备上的分页不能像书本那样一页页的翻开,毕竟电子设备只有一个页面。但是我们可以根据输入不同的参数,让电子设备显示不同的信息,这样看起来就跟真的翻页的效果一样了。甚至乎可以增加翻页的特效,看起来更加像翻页了。
惠州网站设计今天就跟大家聊聊怎么样做一个翻页的效果。如果是普通的php的话,我们可以这样理解。首先,查询下这个分类的数据有多少条。每个页面显示多少条记录。然后用记录数除以每页显示的条数,就可以看到网页要用多少个页面显示这个分页了。是不是很简单呢?假设我们的新闻列表是news 那么,我们的代码就应该是select count(id) from news,这个就可以查到有多少条记录了。然后用记录数去除以我们的每天显示。我们假设每页显示10条记录。那么我们的总页数就是 $num=mysql_query($sql);然后就是$page=$num/10 +1 这样就可以显示出要多少页面了。我们怎么查询每页的数据呢?
select * from news limit 0+$page*10,10 这个就是我们的sql语句了。具体就是从 0+$page*10 这个id开始查询,10条记录。是不是很简单呢?到这里我们在数据页面上的记录就查询到了。直接显示出来就可以了。
今天的重点不是普通的php的查询。而是tp6的带参数的分页。什么时候会用到这个情况呢?如果是普通的分页的话,我们只要传输一个页面的参数进去可以了。但是有时候,我们搜索某个产品的时候,除了带页面数据之外,还要带我们查询的参数。所以就更加复杂了。下面,我们看看普通的tp分页代码。
$fydata=Db::name("news")->where('status',1)->order('id', 'desc')->paginate(10);
return view('index', ['fydata' => $fydata]);
这样就是最简单分页了,比我们自己写的代码,要简单不少,确实方便了我们。但是如果你对tp6不熟悉的话,这样的写法也容易出问题。比方说,我们要改样式的话,就只能改css了。还有就是不方便我们传入我们查询参数。我们在看看模板中,怎么调用这个简单的页面。
<div>
<ul>
{volist name='list' id='user'}
<li> {$user.nickname}</li>
{/volist}
</ul>
</div>
{$list|raw}
也是相当的简单啊。唯一问题就是我们要用的时候,不太好修改。
好了,不卖关子了。惠州网站设计下面就对这个进行修改。
$fydata=Db::name("news")->where('status',1)->order('id', 'desc')->
->paginate([
'list_rows'=> 10,
'query' => ['seoarea'=>$id]]);
return view('index', ['fydata' => $fydata]);
看看跟前面的代码有什么不同呢?
最大的不同就是paginate这个从一个参数改成了一个数组。
加入了'query'这个就是我们用来调整输入的参数了。同时满足这个参数和页码才能查询出正确的结果。模板方面的话,目前没有其他的不同。
来源:惠州网站设计 快速仿站