redirect('Public/login'); } } //首页 public function index(){ //删除过期访问数据 $year_time=mktime(0, 0, 0, date('m'),date('d'), date('Y')-1); $where1["daytime"]=array("LT",$year_time); M("visit")->where($where1)->delete(); $day_time=mktime(0, 0, 0, date('m'),date('d')-2, date('Y')); $where2["visit_time"]=array("LT",$day_time); M("visit_48")->where($where2)->delete(); // $new_feedback=M("feedback")->where("is_read=0")->count(); $this->new_feedback=(int)$new_feedback; // $this->display(); } //设置语言 public function setAdminLang($admin_lang){ if($admin_lang&&!$this->LANG_OPT[$admin_lang]){ $this->error("语言不存在"); }else{ if($admin_lang){ session("admin_lang",$admin_lang); }else{ session("admin_lang",null); } redirect($_SERVER["HTTP_REFERER"]); } } //修改密码 public function editorpass(){ $this->my=M("user")->find(UID); if(IS_POST){ $rules = array( array('old_password','require','请输入原密码!',1), array("user_password","6,40","密码长度需要6位以上",1,"length"), array('repassword','user_password','确认密码不正确',0,'confirm'), // 验证确认密码是否和密码一致 ); if (!M("user")->validate($rules)->create()){ $this->error(M("user")->getError()); }else{ //原始密码是否正确 if(md6(I("post.old_password"))!=$this->my[user_password]){ $this->error("原始密码不正确"); } // $user_password=md6(I("post.user_password")); M("user")->save(array("user_id"=>UID,"user_password"=>$user_password)); $this->success("密码修改成功"); } }else{ $this->display(); } } //访问统计 public function getTongji(){ $Model = new \Think\Model(); $type=$_GET["type"]; //昨天 if($type=="yesterday"){ $start_time=strtotime(date("Y-m-d",strtotime("-1 day"))); //昨天开始时间 $end_time=strtotime(date("Y-m-d"))-1; //昨天结束时间也是今天开始时间-1 //0-23点 for($i=0;$i<=23;$i++){ //名称 $for["bar_name"][]=$i; $start_time2=strtotime(date("Y-m-d",strtotime("-1 day"))." ".$i.":00:00"); $end_time2=strtotime(date("Y-m-d",strtotime("-1 day"))." ".$i.":59:59"); //IP统计 $where=array(); $where["visit_time"]=array("between",array($start_time2,$end_time2)); $ip_total=M("visit_48")->where($where)->group("ip")->select(); $for["bar_ip_total"][]=count($ip_total); //PV统计 $for["bar_pv_total"][]=M("visit_48")->where($where)->count(); } //总计统计 $alltotal=M("visit")->where(array("daytime"=>$start_time))->find(); } //最近7天的 else if($type=="week"){ $start_time=strtotime(date("Y-m-d",strtotime("-7 day"))); //开始时间 $end_time=time(); //结束时间 // for($i=6;$i>=0;$i--){ //名称 $for["bar_name"][]=date("m-d",strtotime("-".$i." day")); $daytime=strtotime(date("Y-m-d",strtotime("-".$i." day"))); //IP统计 $where=array(); $where["daytime"]=$daytime; $total=M("visit")->where($where)->find(); $for["bar_ip_total"][]=(int)$total['ip']; //PV统计 $for["bar_pv_total"][]=(int)$total['pv']; } //总计统计 $total2=$Model->query("select SUM(ip)as ip,SUM(pv)as pv,SUM(visit_search)as visit_search,SUM(visit_link)as visit_link,SUM(visit_website)as visit_website,SUM(engine_baidu)as engine_baidu,SUM(engine_google)as engine_google,SUM(engine_sogou)as engine_sogou,SUM(engine_360)as engine_360 from __VISIT__ where daytime between ".$start_time." and ".$end_time." limit 1"); $alltotal=$total2[0]; } //最近30天的 else if($type=="month"){ $start_time=strtotime(date("Y-m-d",strtotime("-30 day"))); //开始时间 $end_time=time(); //结束时间 // for($i=29;$i>=0;$i--){ //名称 $for["bar_name"][]=date("m-d",strtotime("-".$i." day")); $daytime=strtotime(date("Y-m-d",strtotime("-".$i." day"))); //IP统计 $where=array(); $where["daytime"]=$daytime; $total=M("visit")->where($where)->find(); $for["bar_ip_total"][]=(int)$total['ip']; //PV统计 $for["bar_pv_total"][]=(int)$total['pv']; } //总计统计 $total2=$Model->query("select SUM(ip)as ip,SUM(pv)as pv,SUM(visit_search)as visit_search,SUM(visit_link)as visit_link,SUM(visit_website)as visit_website,SUM(engine_baidu)as engine_baidu,SUM(engine_google)as engine_google,SUM(engine_sogou)as engine_sogou,SUM(engine_360)as engine_360 from __VISIT__ where daytime between ".$start_time." and ".$end_time." limit 1"); $alltotal=$total2[0]; } //最近半年 else if($type=="halfyear"){ $start_time=mktime(0, 0, 0,date('m')-5,1, date('Y')); //开始时间 $end_time=time(); //结束时间 // for($i=5;$i>=0;$i--){ //名称 $for["bar_name"][]=date("Y-m",mktime(0, 0, 0, date('m')-$i,1, date('Y'))); $start_time2=mktime(0, 0, 0, date('m')-$i,1, date('Y')); $end_time2=mktime(0, 0, 0, date('m')-($i-1),0, date('Y')); $total=$Model->query("select SUM(ip)as ip,SUM(pv)as pv from __VISIT__ where daytime between ".$start_time2." and ".$end_time2." limit 1"); //IP统计 $for["bar_ip_total"][]=(int)$total[0]['ip']; //PV统计 $for["bar_pv_total"][]=(int)$total[0]['pv']; } //总计统计 $total2=$Model->query("select SUM(ip)as ip,SUM(pv)as pv,SUM(visit_search)as visit_search,SUM(visit_link)as visit_link,SUM(visit_website)as visit_website,SUM(engine_baidu)as engine_baidu,SUM(engine_google)as engine_google,SUM(engine_sogou)as engine_sogou,SUM(engine_360)as engine_360 from __VISIT__ where daytime between ".$start_time." and ".$end_time." limit 1"); $alltotal=$total2[0]; } //最近一年 else if($type=="year"){ $start_time=mktime(0, 0, 0,date('m')-11,1, date('Y')); //开始时间 $end_time=time(); //结束时间 // for($i=11;$i>=0;$i--){ //名称 $for["bar_name"][]=date("Y/m",mktime(0, 0, 0, date('m')-$i,1, date('Y'))); $start_time2=mktime(0, 0, 0, date('m')-$i,1, date('Y')); $end_time2=mktime(0, 0, 0, date('m')-($i-1),0, date('Y')); $total=$Model->query("select SUM(ip)as ip,SUM(pv)as pv from __VISIT__ where daytime between ".$start_time2." and ".$end_time2." limit 1"); //IP统计 $for["bar_ip_total"][]=(int)$total[0]['ip']; //PV统计 $for["bar_pv_total"][]=(int)$total[0]['pv']; } //总计统计 $total2=$Model->query("select SUM(ip)as ip,SUM(pv)as pv,SUM(visit_search)as visit_search,SUM(visit_link)as visit_link,SUM(visit_website)as visit_website,SUM(engine_baidu)as engine_baidu,SUM(engine_google)as engine_google,SUM(engine_sogou)as engine_sogou,SUM(engine_360)as engine_360 from __VISIT__ where daytime between ".$start_time." and ".$end_time." limit 1"); $alltotal=$total2[0]; } //今天 else{ $start_time=strtotime(date("Y-m-d")." 00:00:00"); $end_time=date("Y-m-d")." 23:59:59"; //0-23点 for($i=0;$i<=23;$i++){ //名称 $for["bar_name"][]=$i; $start_time2=strtotime(date("Y-m-d")." ".$i.":00:00"); $end_time2=strtotime(date("Y-m-d")." ".$i.":59:59"); //IP统计 $where=array(); $where["visit_time"]=array("between",array($start_time2,$end_time2)); $ip_total=M("visit_48")->where($where)->group("ip")->select(); $for["bar_ip_total"][]=count($ip_total); //PV统计 $for["bar_pv_total"][]=M("visit_48")->where($where)->count(); } //总计统计 $alltotal=M("visit")->where(array("daytime"=>$start_time))->find(); } //开始数据统计查询 $for['pie_name']=array("直达","跳转","百度","谷歌","搜狗","360"); $for['pie_data1']=array( array( "name"=>"直达", "value"=>(int)$alltotal["visit_website"], ), array( "name"=>"跳转", "value"=>(int)$alltotal["visit_link"], ), array( "name"=>"搜索引擎", "value"=>(int)$alltotal["visit_search"], ), ); $for['pie_data2']=array( array( "name"=>"直达", "value"=>(int)$alltotal["visit_website"], ), array( "name"=>"跳转", "value"=>(int)$alltotal["visit_link"], ), array( "name"=>"百度", "value"=>(int)$alltotal["engine_baidu"], ), array( "name"=>"谷歌", "value"=>(int)$alltotal["engine_google"], ), array( "name"=>"搜狗", "value"=>(int)$alltotal["engine_sogou"], ), array( "name"=>"360", "value"=>(int)$alltotal["engine_360"], ), ); $this->success($for); } }