php分页的问题,如何不重新查询

gaswei 2009-07-18 02:51:31
我的查询过程是先根据一些条件选出记录建立一张临时表,然后在根据一些条件选出记录插入这张临时表,最后才从那个临时中查询。
分页后点击下一页,又会重新执行建立临时表,插入数据的过程,有没有什么方法不重新执行,直接从最终的临时表中选取记录?结果集很大,用session的话有没有问题?
...全文
190 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ttm1984 2009-07-19
  • 打赏
  • 举报
回复
mark
北京不不 2009-07-19
  • 打赏
  • 举报
回复
用ajax翻页吧。
gaswei 2009-07-19
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 daxuejianku 的回复:]
用ajax翻页吧。
[/Quote]
能说详细一点吗?还有一个问题我从数据库读出来的中文在网页上显示是乱码,怎么转换?用iconv还是乱码呀
gaswei 2009-07-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 syscgc 的回复:]
把查询结果做个缓存。然后每次都读缓存去
[/Quote]
怎么做缓存?我刚接触php,不是很清楚
syscgc 2009-07-18
  • 打赏
  • 举报
回复
把查询结果做个缓存。然后每次都读缓存去
gaswei 2009-07-18
  • 打赏
  • 举报
回复
我的意思是我的查询语句有几个:
select XXXX from XXXX where XXX into temp tab
insert into tab select XXXX from XXXX where XXXX
select skip a first b* from tab
每次点击下一页时将相应的a、b传给页面以实现分页,但是每次都会再次执行前面2个语句,有没有什么方法是不重复执行前面2个语句,直接从第3个语句执行的?
Ricky_Bobo 2009-07-18
  • 打赏
  • 举报
回复
你的查询是使用的函数吗?如果是的话你可以新建函数。如果不是,那在点击下一页时,它应该从上一页查询出来的数据的下一条开始查询,那在你的循环取值代码前应该加上这样一句:
$i=($page_now-1)*($page_recs);
if($total_books>0){
mysql_data_seek($cxh,$i);
}
,$page_now这是当前页,$page_recs这是每页显示记录的条数,$total_books是总记录的条数,$cxh这是你查询出来的结果集。
session一般是用来存放数据量较小的信息,如果你的结果集大的话建议你不要使用session。
不知道这些是不是你想要的~

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧