Example #1
0
 /**
  * 以Ip地址为标志,查看当前用户是否有登陆
  */
 public function checkLoginStatus()
 {
     $criteria = new CDbCriteria();
     $criteria->addSearchCondition('data', UtilNet::getClientIp());
     $model = Session::model()->find($criteria);
     if ($model) {
         return true;
     } else {
         return false;
     }
 }
Example #2
0
 /**
  * Displays the login page
  */
 public function actionLogin()
 {
     $this->layout = '//layouts/site';
     if (!Yii::app()->user->isGuest) {
         $this->redirect($this->createUrl('/archiver/index', array('name' => Yii::app()->user->name, 'uid' => Yii::app()->user->id)));
     }
     $model = new LoginForm();
     // if it is ajax validation request
     if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') {
         echo CActiveForm::validate($model);
         Yii::app()->end();
     }
     // collect user input data
     if (isset($_POST['LoginForm'])) {
         $model->attributes = $_POST['LoginForm'];
         // validate user input and redirect to the previous page if valid
         if ($model->validate() && $model->login()) {
             Yii::app()->session['loginIp'] = UtilNet::getClientIp();
             if (isset($_GET['referer'])) {
                 $this->redirect($_GET['referer']);
             } else {
                 $this->redirect(array('/archiver/index', 'uid' => Yii::app()->user->id, 'name' => Yii::app()->user->name));
             }
         }
     }
     // display the login form
     $this->render('login', array('model' => $model));
 }
Example #3
0
 /**
  * Add the visitor who have read this blog
  * @param int $id
  */
 public function addArticleVisitorInfo($id, $interval)
 {
     $ip = UtilNet::getClientIp();
     // 		echo $ip;
     //		$qq = new QQWry(long2ip($ip));
     //		echo $qq->getDetailInfo();
     $visitorInfo = Visitor::model()->find('ip = :ip AND aid = :aid', array(':ip' => $ip, ':aid' => $id));
     // 		UtilHelper::dump($visitorInfo->attributes);
     if ($visitorInfo) {
         $visitorInfo->lasttime = time();
         $visitorInfo->times++;
         $visitorInfo->alltime .= '|' . time();
         $visitorInfo->intervals .= '|' . $interval;
         if (!Yii::app()->user->isGuest) {
             $visitorInfo->uid = Yii::app()->user->id;
         }
         UtilHelper::writeToFile($visitorInfo->attributes);
         //			Yii::app()->end();
         try {
             $visitorInfo->save();
         } catch (Exception $e) {
             UtilHelper::dump($e);
         }
     } else {
         $visitorInfo = new Visitor();
         $visitorInfo->aid = $id;
         $visitorInfo->ip = $ip;
         $visitorInfo->lasttime = time();
         $visitorInfo->times = 1;
         $visitorInfo->intervals = $interval;
         if (!Yii::app()->user->isGuest) {
             $visitorInfo->uid = Yii::app()->user->id;
         }
         $visitorInfo->alltime = time();
         $visitorInfo->refer = $_SERVER['HTTP_REFERER'];
         $visitorInfo->terminal = $_SERVER['HTTP_USER_AGENT'];
         UtilHelper::writeToFile($visitorInfo->attributes);
         //			Yii::app()->end();
         if ($visitorInfo->save()) {
             // 				echo "OK";
         } else {
             //				echo "Fail";
         }
     }
 }
Example #4
0
 /**
  * 用户开始进入某页面,添加相关信息
  * @param unknown_type $id
  */
 public function visitStart($id, $refer)
 {
     try {
         $ip = ip2long(UtilNet::getClientIp());
         $model = Statistics::model()->find(array('condition' => 'ip = :ip AND aid = :aid AND refer = :refer AND UNIX_TIMESTAMP( )-starttime<:interval', 'order' => 'id DESC', 'params' => array(':ip' => $ip, ':aid' => $id, ':refer' => $refer, ':interval' => 180)));
         UtilHelper::writeToFile($model->attributes);
         if ($model) {
             $model->endtime = time();
             //				UtilHelper::writeToFile(array_merge(array('提示'=>'更新'), $model->attributes), 'a+');
             if ($model->save()) {
                 echo $model->id;
             }
         } else {
             $model = new Statistics();
             $model->aid = $id;
             $model->ip = $ip;
             $model->starttime = time();
             if (!Yii::app()->user->isGuest) {
                 $model->uid = Yii::app()->user->id;
             }
             $model->terminal = $_SERVER['HTTP_USER_AGENT'];
             $model->refer = $refer;
             //				UtilHelper::writeToFile(array_merge(array('提示'=>'新加入数据'), $model->attributes), 'a+');
             if ($model->save()) {
                 echo $model->id;
             }
         }
         UtilHelper::writeToFile(CHtml::errorSummary($model), 'a+');
     } catch (Exception $e) {
         echo $e->getMessage();
     }
 }