You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

155 lines
5.1 KiB

7 years ago
7 years ago
7 years ago
7 years ago
  1. <?php
  2. defined('BASEPATH') OR exit('No direct script access allowed');
  3. class Statics extends WB_Controller {
  4. function __construct()
  5. {
  6. parent::__construct();
  7. $this->load->model('statics_model');
  8. $this->data['startdate'] = $this->input->get('startdate', TRUE, date('Y-m-d', strtotime("-1 month")));
  9. $this->data['enddate'] = $this->input->get('enddate', TRUE, date('Y-m-d', strtotime("-1 days")));
  10. }
  11. /**
  12. * 사용자 접속 로그
  13. */
  14. public function visit()
  15. {
  16. // 모델 가져오기
  17. $this->load->model('statics_model');
  18. // 넘어온 검색값 정리
  19. $this->data['startdate'] = $this->input->get('startdate', TRUE, date('Y-m-d', strtotime("-1 month", time())));
  20. $this->data['enddate'] = $this->input->get('enddate', TRUE, date('Y-m-d'));
  21. $this->data['is_mobile'] = $this->input->get('is_mobile', TRUE, array('Y','N'));
  22. $this->data['ip'] = $this->input->get('ip', TRUE, '');
  23. // 값 가져오기
  24. $param['page'] = $this->input->get('page', TRUE, 1);
  25. $param['page_rows'] = 15;
  26. $param['limit'] = TRUE;
  27. $param['where']['sta_regtime >='] = $this->data['startdate'] ." 00:00:00";
  28. $param['where']['sta_regtime <='] = $this->data['enddate'] ." 23:59:59";
  29. if(! empty($this->data['ip'])) $param['where']['INET_NTOA(sta_ip)'] = $this->data['ip'];
  30. $param['where_in']['sta_is_mobile'] = $this->data['is_mobile'];
  31. $this->data['visit_list'] = $this->statics_model->visit_list($param);
  32. // 페이지네이션 세팅
  33. $this->load->library('paging');
  34. $this->paging->initialize(array(
  35. "page" => $param['page'],
  36. "page_rows" => $param['page_rows'],
  37. "total_rows" => $this->data['visit_list']['total_count'],
  38. "fixe_nums" => 10,
  39. 'full_tag_open' => '<ul class="pagination pagination-sm">'
  40. ));
  41. $this->data['pagination'] = $this->paging->create();
  42. // 메타태그 설정
  43. $this->site->meta_title = "사용자 접속 로그"; // 이 페이지의 타이틀
  44. // 레이아웃 & 뷰파일 설정
  45. $this->theme = "admin";
  46. $this->view = "statics/visit";
  47. $this->active = "statics/visit";
  48. }
  49. /**
  50. * 키워드별 통계
  51. */
  52. public function keyword()
  53. {
  54. $this->data['statics'] = $this->statics_model->statics_group('sta_keyword', $this->data['startdate'], $this->data['enddate'] );
  55. // 메타태그 설정
  56. $this->site->meta_title = "키워드별 통계";
  57. // 레이아웃 & 뷰파일 설정
  58. $this->theme = "admin";
  59. $this->view = "statics/keyword";
  60. $this->active = "statics/keyword";
  61. }
  62. /**
  63. * 방문시간별 통계
  64. * @todo 작업해야됨
  65. */
  66. public function times()
  67. {
  68. $this->data['statics'] = $this->statics_model->statics_times( $this->data['startdate'], $this->data['enddate'] );
  69. // 메타태그 설정
  70. $this->site->meta_title = "방문 시간별 통계";
  71. // 레이아웃 & 뷰파일 설정
  72. $this->theme = "admin";
  73. $this->view = "statics/times";
  74. $this->active = "statics/times";
  75. }
  76. /**
  77. * 유입 경로별 통계
  78. */
  79. public function referrer()
  80. {
  81. $this->data['statics'] = $this->statics_model->statics_group('sta_referrer_host', $this->data['startdate'], $this->data['enddate'] );
  82. // 메타태그 설정
  83. $this->site->meta_title = "유입 경로별 통계";
  84. // 레이아웃 & 뷰파일 설정
  85. $this->theme = "admin";
  86. $this->view = "statics/referrer";
  87. $this->active = "statics/referrer";
  88. }
  89. /**
  90. * PC/MOBILE 통계
  91. */
  92. public function device()
  93. {
  94. $this->data['statics'] = $this->statics_model->statics_device( $this->data['startdate'], $this->data['enddate'] );
  95. // 메타태그 설정
  96. $this->site->meta_title = "PC/MOBILE 통계";
  97. // 레이아웃 & 뷰파일 설정
  98. $this->theme = "admin";
  99. $this->view = "statics/device";
  100. $this->active = "statics/device";
  101. }
  102. /**
  103. * 브라우져별 통계
  104. */
  105. public function browser()
  106. {
  107. $this->data['statics'] = $this->statics_model->statics_group('sta_browser', $this->data['startdate'], $this->data['enddate'] );
  108. // 메타태그 설정
  109. $this->site->meta_title = "브라우져별 통계";
  110. // 레이아웃 & 뷰파일 설정
  111. $this->theme = "admin";
  112. $this->view = "statics/browser";
  113. $this->active = "statics/browser";
  114. }
  115. /**
  116. * OS별 통계
  117. */
  118. public function os()
  119. {
  120. $this->data['statics'] = $this->statics_model->statics_group('sta_platform', $this->data['startdate'], $this->data['enddate'] );
  121. // 메타태그 설정
  122. $this->site->meta_title = "OS별 통계";
  123. // 레이아웃 & 뷰파일 설정
  124. $this->theme = "admin";
  125. $this->view = "statics/os";
  126. $this->active = "statics/os";
  127. }
  128. }