www.gusucode.com > HTML5+PHP自适应屏幕的企业通用建站模板源码程序 > html5zsyqywz_v3.3/source/product.php
<?php if(!defined('APP_PATH')||!defined('JWCOM_PATH')){exit('Access Denied');} class product extends syController { function __construct(){ parent::__construct(); $this->molds = 'product'; $this->moldname=moldsinfo('product','moldname'); $this->sy_class_type=syClass('syclasstype'); $this->Class=syClass('c_product'); $this->db=$GLOBALS['G_DY']['db']['prefix'].'product'; } function index(){ if($this->syArgs('file',1)!=''){ $this->product=syDB('product')->findSql('select * from '.$this->db.' a left join '.$this->db.'_field b on (a.id=b.aid) where (htmlfile="'.$this->syArgs('file',1).'" or id='.$this->syArgs('file').') and isshow=1 limit 1'); $id = $this->product['id']; }else{ $id = $this->syArgs('id'); if(!$id){message("请指定内容id");} $this->product=syDB('product')->findSql('select * from '.$this->db.' a left join '.$this->db.'_field b on (a.id=b.aid) where id='.$id.' and isshow=1 limit 1'); } if(!$this->product){message("指定内容不存在或未审核");} $this->product=$this->product[0]; $this->product=array_merge($this->product,array('tid_leafid'=>$this->sy_class_type->leafid($this->product['tid']))); $this->attribute_type=syDB('product')->findSql('select distinct a.tid,a.aid,b.tid,b.isshow,b.orders,b.name from '.$this->db.'_attribute a left join '.$GLOBALS['G_DY']['db']['prefix'].'attribute_type b on (a.tid=b.tid and a.aid='.$this->product['id'].') where b.isshow=1 order by b.orders desc,b.tid desc'); if($this->product['mrank']>0||$this->product['mgold']>0){ syClass('symember')->p_v($this->product['mrank'],$this->product['mgold'],'product',$this->product['id']); } $prev_next_w=' and tid in('.$this->sy_class_type->leafid($this->product['tid']).') '; $prev_next_f='id,litpic,style,mrank,mgold,title,htmlurl,htmlfile'; $prev=syDB('product')->find(' id<'.$this->product['id'].$prev_next_w,'id desc',$prev_next_f); if($prev){ $prev['url']=html_url('product',$prev); $this->aprev=$prev; } $next=syDB('product')->find(' id>'.$this->product['id'].$prev_next_w,'id',$prev_next_f); if($next){ $next['url']=html_url('product',$next); $this->anext=$next; } $this->record=total_page($GLOBALS['G_DY']['db']['prefix'].'sales_record where aid='.$this->product['id']); $body=array_filter(explode("[jwcom|page]",$this->product['body'])); if(count($body)>1){ $pages=array( 'total_page' => count($body), // 总页数 'prev_page' => $this->syArgs('page',0,1)-1, // 上一页的页码 'next_page' => $this->syArgs('page',0,1)+1, // 下一页的页码 'last_page' => count($body), // 最后一页的页码 'current_page' => $this->syArgs('page',0,1), // 当前页码 ); $this->product=array_merge($this->product,array('body'=>$body[$this->syArgs('page',0,1)-1])); if($this->syArgs('page')>1){ $this->product=array_merge($this->product,array('title'=>$this->product['title'].' ('.$this->syArgs('page').')')); } $this->pages=html_url('product',$this->product,$pages,$this->syArgs('page',0,1)); } $this->type=syDB('classtype')->find(" molds='product' and tid=".$this->product['tid']." ",null,'tid,classname,classnamesub,litpic,keywords,description,t_content,htmldir,htmlfile,mrank,msubmit,unit'); if($this->type['mrank']>0){ syClass('symember')->p_v($this->type['mrank']); } $this->type=array_merge($this->type,array('tid_leafid'=>$this->sy_class_type->leafid($this->product['tid']))); $this->positions='<a href="'.$GLOBALS["WWW"].'">首页</a>'; foreach($this->sy_class_type->navi($this->product['tid']) as $v){ $d_pos=syDB('classtype')->find(array('tid'=>$v['tid']),null,'tid,molds,htmldir,htmlfile,mrank'); $this->positions.=' > <a href="'.html_url('classtype',$d_pos).'">'.$v['classname'].'</a>'; } $this->display('product/'.$this->type['t_content']); } function type(){ if($this->syArgs('file',1)!=''){ $this->type=syDB('classtype')->find(' htmlfile="'.$this->syArgs('file',1).'" or tid='.$this->syArgs('file').' '); $tid = $this->type['tid']; }else{ $tid = $this->syArgs('tid'); $this->type=syDB('classtype')->find(" molds='product' and tid=".$tid." "); } if(!$this->type){message("指定栏目不存在");} if($this->type['mrank']>0){ syClass('symember')->p_v($this->type['mrank']); } $this->type=array_merge($this->type,array('tid_leafid'=>$this->sy_class_type->leafid($tid))); if($this->type['isindex']==0)$t=$this->type['t_index']; if($this->type['isindex']==3)$t=$this->type['t_listb']; if($this->type['isindex']==2)$t=$this->type['t_listimg']; if($this->type['isindex']==1)$t=$this->type['t_list']; if($this->type['isindex']==1||$this->type['isindex']==2){ $w.=" where isshow=1 "; $w.="and tid in(".$this->type['tid_leafid'].") "; if($this->syArgs('trait'))$w.="and trait like '%,".$this->syArgs('trait').",%' "; $this->orders = $this->syArgs('orders'); $by = ($this->syArgs('acs')!=1) ? '' : 'desc'; $this->acs = ($this->syArgs('acs')!=1) ? 1 : 0; $this->url='c=product&a=type&tid='.$tid.'&orders='.$orders.'&acs='.$this->acs; if($this->orders==1){ $order=' order by addtime '.$by.',orders desc,id desc'; }else if($this->orders==2){ $order=' order by record '.$by.',orders desc,id desc'; }else if($this->orders==3){ $order=' order by hits '.$by.',orders desc,id desc'; }else{ $order=' order by orders desc,addtime desc,id desc'; } $f=syDB('fields')->findAll(" molds='product' and types like '%|".$tid."|%' and lists=1 "); $sql='select id,tid,title,style,trait,gourl,addtime,record,hits,litpic,orders,price,mrank,mgold,isshow,description,htmlurl,htmlfile,user'; if($f){ foreach($f as $v){$fields.=','.$v['fields'];} $sql=$sql.$fields.' from '.$this->db.' a left join '.$this->db.'_field b on (a.id=b.aid)'.$w.$order; }else{ $sql=$sql.' from '.$this->db.$w.$order; } $total_page=total_page($this->db.$w); $this->lists = $this->Class->syPager($this->syArgs('page',0,1),$this->type['listnum'],$total_page)->findSql($sql); $pages=$this->Class->syPager()->getPager(); $this->pages=html_url('classtype',$this->type,$pages,$this->syArgs('page',0,1)); $list_c=$this->lists; foreach($list_c as $k=>$v){ $list_c[$k]['url']=html_url('product',$v); } $this->lists=$list_c; } $this->positions='<a href="'.$GLOBALS["WWW"].'">首页</a>'; $type_pos=$this->sy_class_type->navi($tid); foreach($type_pos as $v){ $d_pos=syDB('classtype')->find(array('tid'=>$v['tid']),null,'tid,molds,htmldir,htmlfile,mrank'); $this->positions.=' > <a href="'.html_url('classtype',$d_pos).'">'.$v['classname'].'</a>'; } $this->display('product/'.$t); } function hits(){ if($this->syArgs('id')){ syDB('product')->incrField(array('id'=>$this->syArgs('id')), 'hits'); $hits=syDB('product')->find(array('id'=>$this->syArgs('id')),null,'hits'); echo 'document.write("'.$hits['hits'].'");'; } } function search(){ $this->type=array('title'=>'站内搜索','keywords'=>$GLOBALS['S']['keywords'],'description'=>$GLOBALS['S']['description'],'classname'=>'全部',); $this->type=array_merge($this->type,array('tid_leafid'=>$this->sy_class_type->leafid())); $w.=" where isshow=1 "; $word=$this->syArgs('word',1); if($word){ $w.="and ("; $str = explode(' ',$word); foreach($str as $s){ if($s)$w.=" title like '%".$s."%' or keywords like '%".$s."%' or"; } $w=rtrim($w,'or').") "; } $order=' order by orders desc,addtime desc,id desc'; $sql='select id,tid,title,style,trait,gourl,addtime,hits,litpic,orders,price,mrank,mgold,isshow,htmlurl,htmlfile,description,user,body from '.$this->db.' a left join '.$this->db.'_field b on (a.id=b.aid)'.$w.$order; $total_page=total_page($this->db.$w); $this->lists = $this->Class->syPager($this->syArgs('page',0,1),30,$total_page)->findSql($sql); $pages=$this->Class->syPager()->getPager(); $this->pages=pagetxt($pages); $list_c=$this->lists; foreach($list_c as $k=>$v){ $list_c[$k]['title']=str_ireplace($this->syArgs('word',1),'<b style="color:red;">'.$this->syArgs('word',1).'</b>',$v['title']); $list_c[$k]['url']=html_url('product',$v); } $this->lists=$list_c; $this->positions='<a href="'.$GLOBALS["WWW"].'">首页</a> > '.$this->moldname.'搜索“'.$this->syArgs('word',1).'”'; $this->display('product/search.html'); } }