تالار گفتمان nCIS.ir

نسخه‌ی کامل: نحوه درست کردن بازدید سایت در yii
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام وقت بخیر

میخواستم بدونم برای اینکه امار بازدید سایت رو در yii داشته باشم باید جدول براش داشته باشه. بهترین راهش چیه و اگر امکانش هست توضیح بدین ممنون میشم.
من یه جدول ساختم به اسم Visits با فیلدهای id و vdate و counter که id و counter از نوع int و vdate از نوع (char(10 هست. مدل رو هم براش ساختم و با چنین کدی با کمک JDF توی کنترلر والد، بازدیدها رو ثبت میکنم:
$jdf = Yii::app()->jdf;
$today = $jdf->trNum($jdf->date('Y/m/d'));
if($todayHits = Visits::model()->find('vdate=:vdate', array(':vdate' => $today))) {
   $todayHits->saveCounters(array('counter' => 1));
}
else {
   $todayHits = new Visits;
   $todayHits->vdate = $today;
   $todayHits->counter = 1;
   $todayHits->save();
}

برای خوندنش هم میتونید از چنین کدی استفاده کنید:
$jdf = Yii::app()->jdf;
$today = $jdf->trNum($jdf->date('Y/m/d'));
$todayVisits = Visits::model()->find('vdate=:vdate', array(':vdate' => $today))->counter;
$totalVisits = Visits::model()->find('SUM(counter) AS total')->total;


نکته 1 : از کامپوننت JDF که روش ساختش رو اینجا توضیح دادم استفاده کردم.
نکته 2 : برای استفاده از totalVisits باید یه فیلد public به اسم total$ به مدل Visits اضافه کنید.
نکته 3 : میتونید درصورت نیاز، چیزهای دیگه مثل مرورگر مورداستفاده و... رو هم از User Agent استخراج کنید و توی دیتابیس برای بدست آوردن آمار دقیقتر ثبت کنید.