首页 > CMS建站 > PhpCMS > 正文

phpcms v9 时间筛选该怎么做?

2020-10-10 21:28:32
字体:
来源:转载
供稿:网友

在phpcmsv9里,分类信息里的筛选功能让人很兴奋,如果想在内容页里也想做筛选,那么就得把分类信息的函数移植到全局函数或者扩展函数里去,下一篇内容将为大家介绍.

本次内容是教大家做时间的筛选,因为做寿县房产网的时候,楼盘开盘有个开盘时间,所以找了很多资料解决了这个问题.

找到filters_sql函数加入如下代码:

  1. function filters_sql($modelid
  2.  
  3.             elseif($fields[$k]['formtype'] == 'datetime') { 
  4.                 if(is_numeric($r)) { 
  5.                     $sql .=" AND `$k` = '$r'"
  6.                 } else { 
  7.                     $fieldvalue = explode('_',$r); 
  8.                     $min = intval($fieldvalue[0]); 
  9.                     $max = $fieldvalue[1] ? intval($fieldvalue[1]) : 999999;                
  10.                     $sql .="AND TO_DAYS(`$k`) - TO_DAYS(NOW()) >= '$min' AND TO_DAYS(`$k`) - TO_DAYS(NOW()) < '$max'"
  11.                 } //Cuoxin.com 
  12.             } 

关键点在:$sql .="AND TO_DAYS(`$k`) - TO_DAYS(NOW()) >= '$min' AND TO_DAYS(`$k`) - TO_DAYS(NOW()) < '$max'";

用到的是日期差的问题,前台调用的时候用如下代码:

  1. 开课计划: 
  2.  {php $opentime = array('最近1个月|1_30','最近2个月|30_90','最近3个月|90_120','最近6个月|120_180','最近1年|180_360')} 
  3.  {loop yp_filters('opentime',$modelid,$opentime) $r} 
  4.      {$r[menu]} 
  5.  {/loop}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表