帮忙看下这个涵数控制排序的是哪几个语句?
public function getList($items) {
$orderby = empty($items['orderby']) ?' ORDER BY v.avatarflag DESC': $items['orderby'];
$pagesize = empty($items['pagesize']) ?intval(parent::$cfg['userpagesize']) : intval($items['pagesize']);
$where = " WHERE s.flag='1' AND s.lovestatus='1'".$items['searchsql'];
$start = ($items['page']-1)*$pagesize;
$countwhere = empty($items['countwhere']) ?'': ' '.$items['countwhere'];
$countsql = "SELECT COUNT(*) AS my_count FROM ".DB_PREFIX."user_params as ps".
" WHERE ps.flag='1' AND ps.lovestatus='1'".$countwhere ;
$total = parent::$obj->fetch_count($countsql);
if ($total == 0) {
$data = null;
}
else {
$params_sql = $this->_buildParamsSql()." WHERE ps.flag='1' AND ps.lovestatus='1'"
.$countwhere." ORDER BY ps.userid DESC LIMIT ".$start.", ".$pagesize."";
$users = parent::$obj->getall($params_sql);
$ids = $this->_getUserIds($users);
$sql = $this->_buildSql()." WHERE v.userid IN (".$ids.") ORDER BY v.userid DESC";
$data = parent::$obj->getall($sql);
}
return array($total,$this->_handleList($data,'userid'));
}
public function getList($items) {
$orderby = empty($items['orderby']) ?' ORDER BY v.avatarflag DESC': $items['orderby'];
$pagesize = empty($items['pagesize']) ?intval(parent::$cfg['userpagesize']) : intval($items['pagesize']);
$where = " WHERE s.flag='1' AND s.lovestatus='1'".$items['searchsql'];
$start = ($items['page']-1)*$pagesize;
$countwhere = empty($items['countwhere']) ?'': ' '.$items['countwhere'];
$countsql = "SELECT COUNT(*) AS my_count FROM ".DB_PREFIX."user_params as ps".
" WHERE ps.flag='1' AND ps.lovestatus='1'".$countwhere ;
$total = parent::$obj->fetch_count($countsql);
if ($total == 0) {
$data = null;
}
else {
$params_sql = $this->_buildParamsSql()." WHERE ps.flag='1' AND ps.lovestatus='1'"
.$countwhere." ORDER BY ps.userid DESC LIMIT ".$start.", ".$pagesize."";
$users = parent::$obj->getall($params_sql);
$ids = $this->_getUserIds($users);
$sql = $this->_buildSql()." WHERE v.userid IN (".$ids.") ORDER BY v.userid DESC";
$data = parent::$obj->getall($sql);
}
return array($total,$this->_handleList($data,'userid'));
}
解决方案 »
- 数据库连接出错
- 各位老师帮我看个discuz的Passport,谢谢哈~~ 急呀
- php框架
- php
- 分享链接 php+ajax实现内容获取与动态修改
- php跟据用户ip获得用户所在地区的接口
- thinkphp, 在模块中的方法间跳转后session值会被清空是为何?怎么解决?
- imagerotate用不了,php版本5.2.17,怎样解决?
- 对一个字符串进行特殊符号处理
- Cross Domain HTTPS VS HTTP
- mysql 两张数据表导入问题
- zend studio 运行php脚本出现no test was executed 和 error launch "new configuration"
本来 $orderby = empty($items['orderby']) ?' ORDER BY v.avatarflag DESC': $items['orderby']; 是用于构造排序子句的,但后面并没有使用
而是硬写上去
$sql = $this->_buildSql()." WHERE v.userid IN (".$ids.") ORDER BY v.userid DESC";
这个是你的排序 Order by ,不过后面貌似没有用到(只是当前你贴出来的代码)$params_sql = $this->_buildParamsSql()." WHERE ps.flag='1' AND ps.lovestatus='1'"
.$countwhere." ORDER BY ps.userid DESC LIMIT ".$start.", ".$pagesize."";
这里面的order by ps.userid DESC是你的排序
.$countwhere." ORDER BY ps.userid DESC LIMIT ".$start.", ".$pagesize."";
这句有没有控制结果排序?
public function getLikeList($items) {
$orderby = empty($items['orderby']) ?' ORDER BY v.userid DESC': $items['orderby'];
$pagesize = empty($items['pagesize']) ?30 : intval($items['pagesize']);
$start = ($items['page']-1)*$pagesize;
$where = empty($items['searchsql']) ?'': ' '.$items['searchsql'];
$countsql = "SELECT COUNT(*) AS my_count FROM ".DB_PREFIX."user as v".
" WHERE 1=1".$where;
$total = parent::$obj->fetch_count($countsql);
if ($total == 0) {
$data = null;
}
else {
$like_sql = $this->_buildLikeSql()." WHERE 1=1"
.$where.$orderby." LIMIT ".$start.", ".$pagesize."";
$users = parent::$obj->getall($like_sql);
$ids = $this->_getUserIds($users);
$sql = $this->_buildSql()." WHERE v.userid IN (".$ids.") ORDER BY v.userid DESC";
$data = parent::$obj->getall($sql);
}
return array($total,$this->_handleList($data,'userid'));
}