To make a Cron Job work in CodeIgniter, you basically need to follow three steps;
- Create a Model class
- Create a Cron_Jobs Class
- Set the Cron-Jobs command in the webserver.
Please, use the below example for the reference.
Step - 1: Create a Model Class.class Warning_model extends CI_Model { class Warning_model extends CI_Model { public function __construct() { parent::__construct(); } public function addReferenceVATRecord() { //print_r($_SERVER);die; $data = array( 'valid_from' => date('Y-m-d H:i:s'), 'type_id' => '1', 'vat_rate' => '22.5', 'vat_calc' => '0.27', 'updated' => date('Y-m-d H:i:s'), 'updated_by' => '1' ); $this->db->insert('reference_vat', $data); return $this->db->insert_id(); } } /* End of file warning_model.php. */ /* Location: ./application/model/warning_model.php. */Step - 2: Create a Cron_Jobs Controller Class.
if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Cron_Jobs extends CI_Controller { public function __construct() { parent::__construct(); $this->load->model('Warning_model', 'm_warning'); // Call the cron job in below format: // # /usr/local/bin/php /home/admin/admincentre.trunk.rc/index.php cron_jobs cron_add_vat_record } public function cron_update_taxes($action='Cron Jobs') { echo "Hello {$action}".PHP_EOL; } public function cron_add_vat_record() { if ( $this->input->is_cli_request() ) { // echo 'Request From CLI'; $id = $this->m_warning->addReferenceVATRecord(); echo $id.' '.PHP_EOL; die; } else { echo 'Sorry Guys, we are bit smart this time.'; die; } //echo $id.' '.PHP_EOL; die; } } /* End of file cron_jobs.php. */ /* Location: ./application/controller/cron_jobs.php. */Step - 3: Set the Cron-Jobs command in the webserver.
// Use the Croj Job command in below format: # /usr/local/bin/php /home/admin/admincentre.trunk.rc/index.php cron_jobs cron_add_vat_record
No comments:
Post a Comment
Please post any queries and comments here.