Witam wszystkich
Korzystając z kilku poradników z sieci, chcąc dodać zadanie CRONa zrobiłem tak:
- Utworzyłem plik console.php w głównym katalogu który tak wygląda:
<?php
// change the following paths if necessary
$yii=dirname(__FILE__).'/framework/yii.php';
$config=dirname(__FILE__).'/protected/config/cron.php';
// remove the following lines when in production mode
defined('YII_DEBUG') or define('YII_DEBUG',true);
// specify how many levels of call stack should be shown in each log message
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);
require_once($yii);
$app = Yii::createConsoleApplication($config)->run();
?>
-
Utworzyłem oczywiście w config/cron.php
-
Dodałem komendę w protected/commands/DemoCommand.php o treści:
<?php
class DemoCommand extends CConsoleCommand
{
public function getHelp()
{
echo "Info";
}
public function run($args)
{
mail('mail@gmail.com', 'Temat', 'Message');
}
}
?>
- Jak wywołuję w przeglądarce console.php to mam:
Yii command runner (based on Yii v1.1.13) Usage: [parameters...] The following commands are available: - demo To see individual command help, use the following: help
- Jednak nie działa jak dodam do crona. Jak wejdę przez SSH i wpiszę:
/usr/bin/php sciezka_do/console.php demo
uzyskuję:
syntax error, unexpected T_OBJECT_OPERATOR in <b>sciezka/console.php</b> on line <b>14</b>
czyli w linii startującej aplikację.
Dodatkowo jak usunę run(), to komunikat jest taki:
syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in <b>sciezka/framework/YiiBase.php</b> on line <b>61</b><br />
Ktoś ma pomysły co robię źle?