Запрос к БД через Cron

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
89031010168@mail.ru
Сообщения: 5
Зарегистрирован: 2022.01.09, 21:36

Запрос к БД через Cron

Сообщение 89031010168@mail.ru »

Здравствуйте
Только начинаю дружить с Yii2.
Хочу по Cron работать с БД.
В корне сайта создал файл crontask.php
Вот его содержимое:

Код: Выделить всё

require __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../vendor/yiisoft/yii2/Yii.php';

use Yii;
use yii\base\Model;

$sql = "SELECT * FROM v8745uj_yii2.objects limit 5";
Yii::$app->db->createCommand($sql)->queryAll();
Это содержимое создал просто по какому-то наитию, без четкого понимания процесса.
В итоге ошибка 255. Без последней строки - 200.
Чего не хватает в скрипте?
Заранее спасибо.
Аватара пользователя
maleks
Сообщения: 1985
Зарегистрирован: 2012.12.26, 12:56

Re: Запрос к БД через Cron

Сообщение maleks »

в доках почитайте как консольные команды создавать
Yii2 universal module sceleton - for basic and advanced templates
Аватара пользователя
SiZE
Сообщения: 2813
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Запрос к БД через Cron

Сообщение SiZE »

89031010168@mail.ru писал(а): 2022.01.09, 22:04 Здравствуйте
Только начинаю дружить с Yii2.
Хочу по Cron работать с БД.

Чего не хватает в скрипте?
Заранее спасибо.
Склонируйте себе Basic шаблон

Код: Выделить всё

git clone git@github.com:yiisoft/yii2-app-basic.git
Там есть каталог /commands/ в котором у вас будут лежать консольные команды, для примера там уже есть команда HelloController.

Далее можете почитать туториал https://www.yiiframework.com/doc/guide/ ... al-console
89031010168@mail.ru
Сообщения: 5
Зарегистрирован: 2022.01.09, 21:36

Re: Запрос к БД через Cron

Сообщение 89031010168@mail.ru »

Почитал доки, конкретики в понимании добавилось мало.
Прошу подсказки, как запустить этот HelloController через Cron.
Аватара пользователя
SiZE
Сообщения: 2813
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Запрос к БД через Cron

Сообщение SiZE »

89031010168@mail.ru писал(а): 2022.01.11, 13:21 Почитал доки, конкретики в понимании добавилось мало.
Прошу подсказки, как запустить этот HelloController через Cron.
yii hello
89031010168@mail.ru
Сообщения: 5
Зарегистрирован: 2022.01.09, 21:36

Re: Запрос к БД через Cron

Сообщение 89031010168@mail.ru »

SiZE писал(а): 2022.01.11, 14:45 yii hello
Это запуск из консоли. У меня её нет. Я могу пользоваться только GUI хостера.
89031010168@mail.ru
Сообщения: 5
Зарегистрирован: 2022.01.09, 21:36

Re: Запрос к БД через Cron

Сообщение 89031010168@mail.ru »

Изгуглил пол-Гугла
нашел на разных форумах 2 таких предложенных варианта:
1.
пишите в crontab туда, где запускается команда
КОД: ВЫДЕЛИТЬ ВСЁ

php /путь/до/папки/с/проектом yii controller/action
где controller/action название консольного контроллера и экшна
2.
/usr/bin/php ~/mysite.ae/yii user/cronpopular
Используя эти примеры пробовал по всякому: либо ошибки, либо ничего не выполняется
89031010168@mail.ru
Сообщения: 5
Зарегистрирован: 2022.01.09, 21:36

Re: Запрос к БД через Cron

Сообщение 89031010168@mail.ru »

Запустить hello удалось

Код: Выделить всё

/usr/bin/php ~/v8745uj.beget.tech/yii hello
Дальше дело пошло)
Всем спасибо
Ответить