Example #1
0
 /**
  * query
  * @param map 查询条件
  * @param page 分页参数
  * @param order 排序参数
  * @param params 点击分页时带参数
  * @return array
  */
 public function query($map = null, $page = array('curpage' => 0, 'size' => 10), $order = false, $params = false, $fields = false)
 {
     $query = $this->model;
     if (!is_null($map)) {
         $query = $query->where($map);
     }
     if (!($order === false)) {
         $query = $query->order($order);
     }
     if (!($fields === false)) {
         $query = $query->field($fields);
     }
     $list = $query->page($page['curpage'] . ',' . $page['size'])->select();
     if ($list === false) {
         $error = $this->model->getDbError();
         return $this->apiReturnErr($error);
     }
     $count = $this->model->where($map)->count();
     // 查询满足要求的总记录数
     $Page = new \Think\Page($count, $page['size']);
     //分页跳转的时候保证查询条件
     if ($params !== false) {
         foreach ($params as $key => $val) {
             $Page->parameter[$key] = urlencode($val);
         }
     }
     // 实例化分页类 传入总记录数和每页显示的记录数
     $show = $Page->show();
     return $this->apiReturnSuc(array("show" => $show, "list" => $list));
 }
Example #2
0
 /**
  * 查询数据库出错并exit
  *
  * @param string $content  错误信息。默认'',自动获取最后出错sql
  * @param string $msg      返回错误提示信息。默认'',取$content
  * @param string $db_sql   sql语句。默认'',取当前模型最后sql
  * @param string $db_error sql错误。默认'',取当前db错误
  *
  * @return void 无返回值
  */
 protected function _sqlErrorExit($content = '', $msg = '', $db_sql = '', $db_error = '')
 {
     $db_sql = $db_sql ? $sql : $this->_model->getLastSql();
     $db_error = $db_error ? $db_error : $this->_model->getDbError();
     $error = '<br />' . $db_sql . '<br />' . $db_error;
     $this->_ajaxReturn(false, ($msg ? $msg : $content) . (APP_DEBUG ? $error : ''));
 }
Example #3
0
 /**
  * query
  * @param map 查询条件
  * @param page 分页参数
  * @param order 排序参数
  * @param params 点击分页时带参数
  * @return array
  */
 public function queryWithCount($map = null, $page = array('curpage' => 0, 'size' => 10), $order = false, $params = false, $fields = false)
 {
     $query = $this->model;
     if (!is_null($map)) {
         $query = $query->where($map);
     }
     if (!($order === false)) {
         $query = $query->order($order);
     }
     if (!($fields === false)) {
         $query = $query->field($fields);
     }
     $list = $query->page($page['curpage'] . ',' . $page['size'])->select();
     if ($list === false) {
         $error = $this->model->getDbError();
         return $this->apiReturnErr($error);
     }
     $count = $this->model->where($map)->count();
     return $this->apiReturnSuc(array("count" => $count, "list" => $list));
 }