【问题标题】:cakephp find() not returning any result for calculated offsetcakephp find() 没有返回任何计算偏移量的结果
【发布时间】:2013-12-07 05:16:47
【问题描述】:

我在 cakephp 中的 find() 函数有一个奇怪的问题。我有以下代码:

 $page_num = (!isset($_GET["page_num"]) || $_GET["page_num"] == "") ? 2 : $_GET["page_num"];
   $page_size = 3;

   $offset = ($page_num-1)*$page_size;
   //var_dump($offset); outputs int 3
   //$offset = 3; <-- Working
   $gal_providers = 
            $this->GalProvider->find("all",array('conditions' => $conditions,'limit' => $page_size,'offset' => $offset));

如果我手动定义$offset = 3,它会显示结果,但是我在计算后得到的$offset 不起作用!可能是什么问题?

【问题讨论】:

  • 你为什么使用 $_GET?
  • $log = $this->GalProvider->getDataSource()->getLog(false, false);调试($日志);在你的查询之后使用上面。这将打印你的mysql查询。然后直接运行它。看看是否有效

标签: php variables cakephp integer


【解决方案1】:

Use the build in paginator of CakePHP 而不是重新发明轮子。

不要使用超级全局变量,而是使用 CakePHP 提供的请求和响应对象。

您的代码格式不一致,也不遵循 CakePHP 编码标准和约定。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-12
    相关资源
    最近更新 更多