function sp_sql_qiushis_paged($tag = "", $pagesize = 20, $pagetpl = '{first}{prev}{liststart}{list}{listend}{next}{last}') { $tag = sp_param_lable($tag); $field = !empty($tag['field']) ? $tag['field'] : 'b.*'; $limit = !empty($tag['limit']) ? $tag['limit'] : ''; $order = !empty($tag['order']) ? $tag['order'] : 'createtime desc'; $field = "a.cat_name,c.user_login,c.user_nicename," . $field; $qiushi_cat_model = M("QiushiCat"); $join = C('DB_PREFIX') . 'qiushi as b on a.id =b.cid'; $join2 = C('DB_PREFIX') . 'users as c on c.id =b.uid'; $where = array("b.status" => 1, "a.status" => 1); if (isset($tag['cid'])) { $where['cid'] = array('in', $tag['cid']); } $totalsize = $qiushi_cat_model->alias("a")->join($join)->where($where)->count(); import('Page'); $PageParam = C("VAR_PAGE"); $page = new \Page($totalsize, $pagesize); $page->setLinkWraper("li"); $page->__set("PageParam", $PageParam); $pagetpl = '{first}{prev}{liststart}{list}{listend}{next}{last}'; $page->SetPager('default', $pagetpl, array("listlong" => "6", "first" => "首页", "last" => "尾页", "prev" => "上一页", "next" => "下一页", "list" => "*", "disabledclass" => "")); $qiushis = $qiushi_cat_model->field($field)->alias("a")->join($join)->join($join2)->where($where)->order($order)->limit($page->firstRow . ',' . $page->listRows)->select(); $return['count'] = $totalsize; $return['items'] = $qiushis; $return['page'] = $page->show('default'); return $return; }
/** * 返回符合条件的所有分类 * @param string $tag 查询标签,以字符串方式传入,例:"ids:1,2;field:term_id,name,description,seo_title;limit:0,8;order:path asc,listorder desc;where:term_id>0;"<br> * ids:调用指定id的一个或多个数据,如 1,2,3 * field:调用terms表里的指定字段,如(term_id,name...) 默认全部,用*代表全部 * limit:数据条数,默认值为10,可以指定从第几条开始,如3,8(表示共调用8条,从第3条开始) * order:排序方式,如:path desc,listorder asc<br> * where:查询条件,字符串形式,和sql语句一样 * * @return array 返回符合条件的所有分类 * */ function sp_get_terms($tag) { $where = array(); $tag = sp_param_lable($tag); $field = !empty($tag['field']) ? $tag['field'] : '*'; $limit = !empty($tag['limit']) ? $tag['limit'] : ''; $order = !empty($tag['order']) ? $tag['order'] : 'term_id'; //根据参数生成查询条件 $where['status'] = array('eq', 1); if (isset($tag['ids'])) { $where['term_id'] = array('in', $tag['ids']); } if (isset($tag['where'])) { $where['_string'] = $tag['where']; } $term_obj = M("Terms"); $terms = $term_obj->field($field)->where($where)->order($order)->limit($limit)->select(); return $terms; }
/** * * @param string $tag * @param array $where * @return array */ function sp_get_users($tag = "field:*;limit:0,8;order:create_time desc;", $where = array()) { $where = array(); $tag = sp_param_lable($tag); $field = !empty($tag['field']) ? $tag['field'] : '*'; $limit = !empty($tag['limit']) ? $tag['limit'] : '8'; $order = !empty($tag['order']) ? $tag['order'] : 'create_time desc'; //根据参数生成查询条件 $mwhere['user_status'] = array('eq', 1); $mwhere['user_type'] = array('eq', 2); //default user if (is_array($where)) { $where = array_merge($mwhere, $where); } else { $where = $mwhere; } $users_model = M("Users"); $users = $users_model->field($field)->where($where)->order($order)->limit($limit)->select(); return $users; }
/** * @处理标签函数 * @以字符串方式传入,通过sp_param_lable函数解析为以下变量 * 返回符合条件的所有页面 * ids:调用指定id的一个或多个数据,如 1,2,3 * field:调用post指定字段,如(id,post_title...) 默认全部 * limit:数据条数,默认值为10,可以指定从第几条开始,如3,8(表示共调用8条,从第3条开始) * order:推荐使用方式(post_date) (desc/asc/rand()) * 使用:ids:1,2;field:post_date,post_content;limit:10;order:post_date DESC,id; */ function sp_sql_ads($tag) { $where = array(); $tag = sp_param_lable($tag); $field = !empty($tag['field']) ? $tag['field'] : '*'; $limit = !empty($tag['limit']) ? $tag['limit'] : ''; $order = !empty($tag['order']) ? $tag['order'] : 'post_date'; //根据参数生成查询条件 $where['status'] = array('eq', 1); if (isset($tag['ad_content'])) { $where['ad_content'] = array('eq', $tag['ad_content']); } $ads = M("Ad")->field($field)->where($where)->order($order)->limit($limit)->select(); return $ads; }