2015-04-10 3 views
-1

Я хочу, чтобы выполнить задания хрон, но я получил электронную почту, которая говорит мне:PHP Cron Job Error

Нет входного файла указано.

И я бегу следующий хрон команды каждый день в 15:00

/usr/bin/php -q /home/popasur/public_html/analytics/savedata_script.php?paramz=savesmdata 

Если я удалить "?" Я получаю электронную почту с выходом, но я также Получать это предупреждение:

Примечание: Undefined смещение: 1 в /home/popasur/public_html/analytics/savedata_script.php на линии

 $arguments = array(); 
    if (is_array($argv) && !empty($argv)) { 
     foreach ($argv as $a) { 
      $a_explode = explode("=", $a); 
      $arguments[$a_explode[0]] = $a_explode[1]; //line 15 
     } 
    } 
+0

Это означает, что $ a_explode не имеет индекса 1. tr для выполнения if (count ($ a_explode [1])> 2) {$ arguments [$ a_explode [0]] = $ a_explode [1]; –

+0

И как я решаю это уведомление? ... Это если не решает это. – Maurice

ответ

0

Если вы используете , вы должны запустить сценарий, как это:

php myScript.php arg1 arg2 arg3 ... 

В этой ситуации у вас есть:

$argv[0] // myScript.php 
$argv[1] // arg1 
$argv[2] // arg2 

и так далее.

0

Thats обычно не как передавать параметры в командной строке. Причина ваш скрипт Isnt работает в том, что оболочка пытается найти файл с именем /home/popasur/public_html/analytics/savedata_script.php?paramz=savesmdata

и то, что я думаю, что вы хотите это:

/home/popasur/public_html/analytics/savedata_script.php paramz=savesmdata 

Затем выполнить все, что взрываются вы хотите на $ ARGV [1]

(или использовать что-то вроде getopts, чтобы сделать это правильно)