将我的命中计数器代码放在我的phpignign codeigniter中?

时间:2014-03-27 05:14:12

标签: php codeigniter hitcounter

我创建了一个命中计数器,它工作正常,但问题是,我已经将这些代码放在构造函数中,如下所示:

// working code
<?php
class Welcome extends CI_Controller{
      function __construct()
      {
          hit_counter(); // works perfectly fine...
      }
      function view_blog()
      {
          // perfectly working code
      }
      function other_function()
      {
          // working fine
      }
}

现在的问题是,每当用户第一次访问网站时,它都会运行代码,但是当他访问view_blog时,它也会运行,当它在other_function上时,会再次运行,所有我想做的事情,我的柜台只计算一次,之后他应该只在下次访问网站时计算,而不是在他访问各种功能时。

1 个答案:

答案 0 :(得分:4)

为什么不实现PHP本机会话?您也可以参加此CI实施的会议。

<?php
session_start(); //<--- Add here
class Welcome extends CI_Controller{
    function __construct()
    {
        if(!isset($_SESSION['visited'])) 
        {
        hit_counter(); // works perfectly fine...
        $_SESSION['visited'] = true; //<--- Sets here the first time.
        }
    }