Привет, я пытаюсь настроить задание cron для скрипта на сервере с помощью cpanel, но я никогда не делал этого, и это действительно помогло бы, если бы кто-нибудь мог мне помочь.Как настроить задание cron для скрипта codeigniter на сервере
ПутьСценарий: /home/name/public_html/application/modules/stockupdate/controllers/stockupdate.php
Мне нужно запустить этот скрипт каждый час я читал учебники, и я пытался использовать следующие команды :
1) php /home/name/public_html/index.php stockupdate
2)/home/name/public_html/application/modules/stockupdate/controllers/stockupdate.php
Сначала один посылает следующее сообщение об ошибке:
<h4>A PHP Error was encountered</h4>
<p>Severity: Notice</p>
<p>Message: Undefined index: REMOTE_ADDR</p>
<p>Filename: core/Input.php</p>
<p>Line Number: 351</p>
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: Cannot modify header information - headers already sent by (output started at /home/name/public_html/system/core/Exceptions.php:185)</p>
<p>Filename: libraries/Session.php</p>
<p>Line Number: 689</p>
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: Cannot modify header information - headers already sent by (output started at /home/name/public_html/system/core/Exceptions.php:185)</p>
<p>Filename: helpers/url_helper.php</p>
<p>Line Number: 542</p>
Вторая команда послать мне сообщение об ошибке, что доступ запрещен. Я был бы очень признателен, если кто-то может помочь мне создать работу cron, пожалуйста. Спасибо
stockupdate.php
<?php
class StockUpdate extends Backend_Controller
{
public function __construct()
{
parent::__construct();
$this->load->library('ftp');
$this->load->library('csvimport');
$this->load->model('stock_update_model');
ini_set('memory_limit', '3000M');
set_time_limit(0);
}
function index()
{
if ($this->input->is_cli_request())
{
$this->stock_update_model->truncate_stock();
$this->update_stock();
}
}
public function update_stock()
{
$ftpServer = "server";
$ftpUser = "username";
$ftpPassword = "password";
$ftp_server = $ftpServer;
$ftp_conn = ftp_connect($ftp_server);
$ftp_login = ftp_login($ftp_conn, $ftpUser, $ftpPassword);
if(!$ftp_conn)
die("A connection to $ftpServer couldn't be established");
else if(!$ftp_login)
die("Your login credentials were rejected");
else
{
$stock_file = "/home/name/files/uploads/stock.CSV";
$server_file = "/stock.CSV";
if (ftp_get($ftp_conn, $stock_file, $server_file, FTP_BINARY))
{
if (($handle = fopen($stock_file, "r")) !== FALSE)
{
while (($data = fgetcsv($handle)) !== FALSE)
{
$product_code = $data[0];
$stock = $data[1];
$this->stock_update_model->update_stock($product_code, $stock);
}
else
{
continue;
}
}
fclose($handle);
unlink($stock_file);
}
else
{
echo "Error reading stock file.\n";
}
}
else
{
echo "There was a problem\n";
}
}
}
Вы должны показать нам свой файл контроллер 'stockupdate.php' –
Спасибо за ваш ответ, дайте мне минуту, и я добавлю, что в. – user4676307
Попробуйте установить хроны по URL приложения. например, «http: // localhost/app_name/имя_контроля/имя_функции» –