Ejemplo n.º 1
0
 public function actionHosts($date)
 {
     $this->pageName = 'Hosts';
     $stats = Yii::app()->stats->initRun();
     $zp = $stats['zp'];
     $sql = "SELECT tm,refer,ip,proxy,host,lang,user,req from cms_surf WHERE dt='" . $date . "' AND " . $zp . " GROUP BY ip ORDER BY i DESC";
     $cmd = Yii::app()->db->createCommand($sql);
     $result = array();
     foreach ($cmd->queryAll(false) as $row) {
         $refer = StatsHelper::Ref($row[1]);
         if (is_array($refer)) {
             list($engine, $query) = $refer;
             $refer1 = StatsHelper::checkSearchEngine($row[1], $engine, $query);
         } else {
             $refer1 = StatsHelper::checkIdna($row);
         }
         $result[] = array('time' => $row[0], 'refer' => $refer1, 'ip' => StatsHelper::getRowIp($row[2], $row[3]), 'host' => StatsHelper::getRowHost($row[2], $row[3], $row[4], $row[5]), 'user_agent' => StatsHelper::getRowUserAgent($row[6], $row[1]), 'timelink' => Html::link($row[7], $row[7]));
     }
     $dataProvider = new CArrayDataProvider($result, array('sort' => array('attributes' => array('ip' => array('asc' => 'ip DESC', 'desc' => 'ip ASC'), 'refer' => array('asc' => 'refer DESC', 'desc' => 'refer ASC'), 'time' => array('asc' => 'time DESC', 'desc' => 'time ASC'))), 'pagination' => array('pageSize' => 10)));
     $this->render('hosts', array('dataProvider' => $dataProvider));
 }