findsql的一个问题

#1 skfzc

我刚开始接触speedphp,现在用findsql分页,出现了问题,没有limit,各位给指导一下,是哪里的问题:
     $sql="select id,title,cp_img from cp where cp_img<>''";
     if ($one<>""){
       $sql=$sql." and hyone_id=".$one;
    }
    if ($two<>""){
       $sql=$sql." and hytwo_id=".$two;
    }
    $sql=$sql." order by id desc";
    $this->$row = $serv->spPager($this->spArgs('page', 1), 5)->findSql($sql);
    $this->pager = $serv->spPager()->getPager();
    echo $serv->dumpsql();


输出的结果是:
select id,title,cp_img from cp where cp_img<>'' and hyone_id=11 and hytwo_id=20 order by id desc

那个spPager不是能自己加上limit吗,怎么这个没有,是我哪里出错了吗?

2011-04-09 12:06:02

#2 jake

spPager首先会检查结果的总数,如果结果总数小于pageSize,那么会直接返回,不需要加limit

2011-04-09 12:13:01

#3 skfzc

但是现在符合条件的有9条,全都显示出来了,并没有按我想要的每页显示5条

2011-04-09 13:05:22

#4 jake

看看$this->spArgs('page')的值是多少,直接设成1看如何
另外,全部函数都需要区分大小写。

2011-04-09 13:12:47