ariyanti dwiastuti ariyanti dwiastuti - 1 month ago 7
HTML Question

Hit Counter in Codeigniter

I have the code below this:

(Step by step)


  1. Put
    counter.txt
    in
    APPPATH . 'logs/counter.txt'

  2. Make
    counter_helper.php
    set in
    APPPATH . 'helpers/counter_helper.php'
    ;

  3. Autoload newly created helper in
    APPPATH . 'config/autoload.php'
    file;

  4. Make
    MY_Controller.php
    in
    APPPATH . 'core/MY_Controller.php'

  5. Any controller should extend
    MY_Controller
    instead of
    CI_Controller
    ;

  6. Echo it on page with:
    <?php echo $this->count_visitor;?>



The Helper :

<?php defined('BASEPATH') OR exit('No direct script access allowed.');

if ( ! function_exists('count_visitor')) {
function count_visitor()
{
$filecounter=(APPPATH . 'logs/counter.txt');
$kunjungan=file($filecounter);
$kunjungan[0]++;
$file=fopen($filecounter, 'w');
fputs($file, $kunjungan[0]);
fclose($file);
return $kunjungan[0];
}
}


The Core :

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class MY_Controller extends CI_Controller
{
public $count_visitor;
public function __construct()
{
parent::__construct();
$this->count_visitor = count_visitor();
}
}
/* End of file MY_Controller.php */
/* Location: ./application/core/MY_Controller.php */


The Controller :

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends MY_Controller {
public function index() {
$data=array('isi' =>'home/index_home');
$this->load->view('layout/wrapper',$data);
}
}


The View :

<?php echo $this->count_visitor;?>


But there is something error in thats code.
The error is like :
enter image description here

Answer Source

I got it to work fine when I loaded the helper $this->load->helper('counter');

application > core > MY_Controller.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class MY_Controller extends CI_Controller
{
    public $count_visitor;

    public function __construct()
    {
        parent::__construct();
        $this->load->helper('counter');
        $this->count_visitor = count_visitor();
    }   
}