spo*_*pod 7 cron codeigniter cpanel
我的网站托管服务器是hostmonster.com.
我的应用程序使用codeigniter框架.
我有一个代码,可以向我的用户发送电子邮件,我想让它自动化.
我已经使用了托管服务的cpanel,我尝试将命令作为
php -q www.mysite.com/admin admin sendDailyEmail
Run Code Online (Sandbox Code Playgroud)
我的控制器是admin,方法是sendDailyEmail,控制器存在于application/controllers/admin文件夹中.
每当cronjob运行时,我也会向我发送提醒电子邮件.
电子邮件主题读取
Cron php -q/home1/username/public_html/admin admin sendDailyEmail
身体说
没有指定输入文件
我哪里出错了.
我从来没有跑cronjobs,这是我第一次.我也不擅长命令行设置.
我的admin sendDailyEmail代码如下
function sendDailyEmail() {
$data = $this->admin_model->getDailyData();
foreach ($data as $u) {
if($u->Daily){
//if(!$u->Amount){
if ($u->Email=='myemail@gmail.com') {
$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('alerts@mysite.com', '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);
}
Run Code Online (Sandbox Code Playgroud)
doi*_*tin 13
您可以根据wget自己的喜好使用和设置时间:
wget http://www.mysite.com/admin/sendDailyEmail
Run Code Online (Sandbox Code Playgroud)
您还可以使用curl:
curl --silent http://www.mysite.com/admin/sendDailyEmail
Run Code Online (Sandbox Code Playgroud)
JiN*_*xus 12
对于CodeIgniter 2.2.0
你可以试试这个:
php-cli /home/username/public_html/index.php controller method
Run Code Online (Sandbox Code Playgroud)
或者在你的情况下
php-cli /home/username/public_html/index.php admin sendDailyEmail
Run Code Online (Sandbox Code Playgroud)
它适用于我..干杯!
| 归档时间: |
|
| 查看次数: |
10689 次 |
| 最近记录: |