CodeIgniter的计划作业通过交友(CodeIgniter Cron Job through

2019-07-22 11:42发布

好吧,我看着每一个其他线程都做什么他们做了,它说,在手册中什么,我不知道这为我的生活。 cron作业的结果正在通过电子邮件发送给我的电子邮件中的一个。 所有正在被打印出布局的HTML标记...并打印基本页面内容......它就像它没有任何注册。

php /home/jdstable/public_html/dev/index.php cron decrease_pets_stats

这是我的命令行。我试图与用户/ local / bin目录/ PHP的东西取代PHP,以及和它没有工作。 问题是是,我有逃跑的是做工精细用PHP程序路径PHP代码/到/ cron.php其他cron作业...但它不会与CI工作..

我控制器cron和我的方法是decrease_pets_stats ..

//decrease pets stats
public function decrease_pets_stats() {
$this->load->model('Cron_model', 'cron');
    $this->cron->decrease_pets_stats();
    echo 'Decreased pet stats';
}

这里是方法的逻辑:

//decrease pets stats
//runs every hour
public function decrease_pets_stats() {
    $this->db->set('hunger', 'hunger - 5');
    $this->db->set('happiness', 'happiness - 5');
    $this->db->set('loyalty', 'loyalty - 5');
    $this->db->update('user_creature');
}

有没有人有任何想法,为什么它只是打印布局标记? 我的构造是这样的:

public function __construct() {
        parent::__construct();
        if( ! $this->input->is_cli_request()) show_error('Direct access is not allowed');

        $this->load->model('Cron_model', 'cron');
    }

而我的父类的构造持有相当多的东西(装载佣工和库的与得到的用户信息在每一页上出现,如果他们登录沿着。

不要紧,如果这是在控制器的顶部,即使打开控制器的Cron上课前?

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

Answer 1:

默认安装PHP您正在使用可能被编译为CGI-FCGI,不为CLI。 这取决于你的主机和/或服务器上,但你需要搜索你的PHP安装的命令行界面,然后使用您的cron作业。 我对Hostmonster的确切同样的问题,我的cron命令结束了:

/ramdisk/bin/php5-cli ~/public_html/sitefolder/index.php controller method

对于我来说,我需要的PHP在/ramdisk/bin/php5-cli



Answer 2:

对于笨2.2.0

你可以试试这个两种方法:

  1. php-cli /home/username/public_html/index.php controller method
  2. wget http://www.example.com/controller/method

或者在你的情况下,

  1. php-cli /home/username/public_html/index.php Cron decrease_pets_stats
  2. wget http://www.example.com/Cron/decrease_pets_stats

它的工作原理罚款与我..干杯!



Answer 3:

有同样的问题,并试图之后不管我所能的事情明显的工作......在/ usr / local / bin目录/ PHP /absolute/path/to/index.php的cron



Answer 4:

在/ usr / local / bin目录/ PHP /home/jdstable/public_html/dev/index.php的cron decrease_pets_stats

这个固定。



Answer 5:

这是解决方案首先你需要找到的phpinfo的document_root文件名路径

PHP5 /home/abc/public_html/index.php FOLDER_NAME控制器功能



文章来源: CodeIgniter Cron Job through Cpanel