欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

帮忙看下如何把下面代码调用每月的数据改成调用所有数据或某年份的数据

程序员文章站 2024-02-06 08:50:28
...
帮忙看下怎么把下面代码调用每月的数据改成调用所有数据或某年份的数据
	//往期团购列表
public function expired()
{
$partitions = D("Goods")->getGoodsPartitions();
$this->assign("partitions",$partitions);

$site_name = trim($_REQUEST['site_name']);
$cate_id = intval($_REQUEST['cate_id']);
$name = trim($_REQUEST['name']);
$status = trim($_REQUEST['status']);
$city = trim($_REQUEST['city']);
$end_time = intval($_REQUEST['end_time']);
if(isset($partitions[$end_time]))
$partition = $partitions[$end_time];
else
{
$partition = current($partitions);
$end_time = $partition['min_date'];
}
$this->assign("end_time",$end_time);

$parameter = array();
$parameter['end_time'] = $end_time;

$is_empty = false;
$where = '';

if(!empty($site_name))
{
$this->assign("site_name",$site_name);
$parameter['site_name'] = $site_name;
$ids = array();
$site_ids = D('Site')->where("name like '%$site_name%'")->field('id')->findAll();
foreach($site_ids as $site)
{
$ids[] = $site['id'];
}

if(count($ids) > 0)
$where .= ' and gk.site_id in ('.implode(',', $ids).')';
else
$is_empty = true;
}

if(!empty($cate_id))
{
$this->assign("cate_id",$cate_id);
$where.=" and gk.cate_id = $cate_id";
$parameter['cate_id'] = $cate_id;
}

if(!empty($city))
{
$this->assign("city",$city);
$where.=" and gk.city = '$city'";
$parameter['city'] = $city;
}

if(!empty($name))
{
$name_query = clearSymbol($name);
if(!empty($name_query))
{
$name_query = segmentToUnicode($name_query,'+');
$match_sql = ' inner join '.C("DB_PREFIX").'goods_match as gm ON gm.id = gk.id ';
$where.=" AND MATCH (gm.content) AGAINST ('$name_query' IN BOOLEAN MODE)";
$this->assign("name",$name);
$parameter['name'] = $name;
}
}

if($status != "" && $status >= 0)
{
$where.=" and g.status = $status";
$this->assign("status",$status);
$parameter['status'] = $status;
}
else
{
$this->assign("status",-1);
}

if(!$is_empty)
{
$model = M();
$count_str = 'SELECT count(g.id) as gcount
FROM '.C("DB_PREFIX").'goods_key as gk
inner join '.C("DB_PREFIX").'goods as g on g.id = gk.id '.$match_sql.
"where $partition[where] $where ";

$count = $model->query($count_str);
$count = $count[0]['gcount'];

$sql_str = 'SELECT g.id,g.name,g.shop_price,g.city,g.end_time,g.status,g.is_best,g.sort,g.cate_id,g.bought,g.site_name
FROM '.C("DB_PREFIX").'goods_key as gk
inner join '.C("DB_PREFIX").'goods as g on g.id = gk.id '.$match_sql.
"where $partition[where] $where ";

$voList = $this->_sqlList($model, $sql_str, $count,$parameter, 'id', false);
}
else
$voList = array();

L("FORBID","未审核");
L("NORMAL","已审核");

$group_city_list = D("GroupCity")->where("status=1")->order("sort asc,id asc")->findAll();
$this->assign("group_city_list",$group_city_list);

$goodsCates = D('GoodsCate')-> where("status=1")-> findAll();
$goodsCates = D('GoodsCate')-> toFormatTree($goodsCates,array('name'));
$this->assign("goodsCates",$goodsCates);

$this->display();
}



前台的调用代码是这样的:
他的下拉菜单选择都是每个月的所有过期数据,我要的效果是下拉菜单加一个全部过期数据或每年份的过期数据
------解决思路----------------------
看一下 D("Goods")->getGoodsPartitions(); 这个方法,改一改


等楼下
------解决思路----------------------
$partitions = D("Goods")->getGoodsPartitions();

这个函数长什么样子
帮忙看下如何把下面代码调用每月的数据改成调用所有数据或某年份的数据

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频