使用 cpanel 在 codeigniter 中执行 cronjob

2024-01-09

我的网站托管服务器是 hostmonster.com。

我的应用程序使用 codeigniter 框架。

我有一个代码可以向我的用户发送电子邮件,我想使其自动执行。

我已经使用了托管服务的 cpanel,并尝试将命令给出为

php -q www.mysite.com/admin admin sendDailyEmail

我的控制器是 admin,方法是 sendDailyEmail,控制器位于 application/controllers/admin 文件夹内。

我还设置了每当 cronjob 运行时向我发送提醒电子邮件。

电子邮件主题如下

Cron php -q /home1/用户名/public_html/admin admin sendDailyEmail

身体说

未指定输入文件

我哪里出错了。

我从来没有运行过 cron 作业,这是我第一次。 我也不擅长给出命令行指令。

我的管理员sendDailyEmail代码如下

function sendDailyEmail() {
    $data = $this->admin_model->getDailyData();
    foreach ($data as $u) {
    if($u->Daily){
     //if(!$u->Amount){
       if ($u->Email=='[email protected] /cdn-cgi/l/email-protection') {

                $user['user_data']['FirstName'] = $u->FirstName;
                $user['user_data']['LastName'] = $u->LastName;
                $user['user_data']['Id']=$u->Id;

                $this->email->clear();
                $this->email->to($u->Email);
                $this->email->from('[email protected] /cdn-cgi/l/email-protection', 'MySite');
                $this->email->subject("My Subject");
                $msg = $this->load->view('emails/daily_view', $user, true);
                $this->email->message($msg);
                if ($this->email->send())
                    $data['message'] = "Daily Emails has been sent successfully";
                else
                    $data['message'] = "Daily Emails Sending Failed";
            }
        }
    }
    $data['main_content']['next_view'] = 'admin_home_view';
    $this->load->view('includes/admin_template', $data);
}

您可以使用wget并设置您喜欢的时间:

wget http://www.mysite.com/admin/sendDailyEmail

您还可以使用curl:

curl --silent http://www.mysite.com/admin/sendDailyEmail
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 cpanel 在 codeigniter 中执行 cronjob 的相关文章

随机推荐