我感到很困惑。我有以下代码:
function fetchAllArray($assoc = MYSQL_ASSOC) {
while($rows=$this->result->fetch_array($assoc))
$arr[]=$rows;
return $arr;
}
function getGalleries($limit = 0,$orderby = '`created` ASC, sort_id',$ordersort = 'DESC') {
$this->query("SELECT * FROM galleries WHERE status=1 ORDER BY ".$orderby." ".$ordersort." ".($limit==0 ? "" : " LIMIT ".$limit).";");
$arr=$this->fetchAllArray();
if(is_array($arr))
return $arr;
else
return FALSE;
}
当我这样称呼它时:
$this->getGalleries(300);
这什么也不会返回!
当我在phpmyadmin中测试确切的查询时,我得到结果。当我从查询中删除LIMIT时,它起作用了。为什么LIMIT在这里不起作用?
该代码在带有LIMIT的localhost中运行良好,但在服务器中却无法运行!
编辑:
我只是发现这是在服务器上不起作用的“创建”字符串!当我从查询中删除
created
时,它在服务器上可用,但是当我包含它时,则无法使用!如何在查询中添加此内容! 最佳答案
似乎您的函数没有获取参数,并且采用默认参数零,因此您不会得到任何结果。
尝试在执行查询之前放置一条打印语句,以查看查询是否组成正确...
关于php - 具有LIMIT的MySQL确实可以,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10061511/