how to run cron in cpanel using codeigniter
<?php
class Cron extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('email_model');
}
public function index()
{
$c_date = date('Y-m-d');
$remider_data = $this->email_model->get_customer_remider_data(array('status'=>'1', 'reminder_date_before' => $c_date));
foreach($remider_data as $remider_data_mail)
{
$mailTo = $remider_data_mail->reminder_email;
$nameTo = $remider_data_mail->reminder_email;
$mailFrom ="[email protected]";
$nameFrom = "project Board";
$subject ="reminder_date_before";
$body = $remider_data_mail->reminder_description;
$headers = "Content-type: text/html;n";
$headers .= "From: ". $nameFrom . " <" . $mailFrom . ">n";
$headers .= "Reply-To: ". '[email protected]' . " <" . 'Project Board' . ">n";
$headers .= "Return-Path: " . $mailFrom ."n";
if(mail($mailTo, $subject, $body, $headers))
{
echo 'email sent';
}
}
}
}
It is my controllers-> Cron file.
I’m using index function to using Cron job.
and I set in cpanel /usr/bin/php /home/*****/public_html/*****/index.php cron index
and also I using php /full-path-to-cron-file/cron.php /test/index
3
Answers
You can call codeigniter from command line with:
Reference here: https://www.codeigniter.com/userguide3/general/cli.html
I don’t know why,
didn’t work for me, but this did work for me
Note the “/” between controller and function.
I have some cronjobs on my server. I simply call that controll that way:
PHP Code: