Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Файл php не обрабатывается через Cron
Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
Ситуация на первый взгляд простая, но бьюсь уже неделю.
Есть файл php, содержимое которое я приведу ниже. Проблема в том, что файл не выполняется, если я запускаю его через cron (с любой периодичностью), но работает, если я захожу на него вручную, через браузер.
Другие файлы с подобным функционалом, но без переменных, вроде time(), отлично работают через cron. В чем может быть причина?
Может проблема в time() и нужно как-то по другому время через cron получать? Тогда почему работает "вручную"?
Покинул форум
Сообщений всего: 8
Дата рег-ции: Авг. 2016
Помог: 0 раз(а)
Добавьте в скрипт:
echo ($sql);
И выполните его вручную из консоли командой php ./имя_скрипта.php
1. Во первых проверяем отработал ли он при запуске из консоли
2. Смотрим, что за SQL запрос формируется
Далее напишите строку запуска по cron. Сервер у вас VPS или шаред?
Heavenanvil пишет:
Ситуация на первый взгляд простая, но бьюсь уже неделю.
Есть файл php, содержимое которое я приведу ниже. Проблема в том, что файл не выполняется, если я запускаю его через cron (с любой периодичностью), но работает, если я захожу на него вручную, через браузер.
Другие файлы с подобным функционалом, но без переменных, вроде time(), отлично работают через cron. В чем может быть причина?
Может проблема в time() и нужно как-то по другому время через cron получать? Тогда почему работает "вручную"?
Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
У меня нет доступа к консоли.
Я только на хостинге в панели могу указать путь к скрипту и время выполнения
anton-th22-info
Отправлено: 26 Августа, 2016 - 04:04:49
Новичок
Покинул форум
Сообщений всего: 8
Дата рег-ции: Авг. 2016
Помог: 0 раз(а)
А вот это хреново. Я проверил скрипт который вы дали и теоретически должно отрабатывать и кроном и из консоли. У хостера на шареде что то наворочено. Напишите им в поддержку, косяк 100% на их стороне.
Heavenanvil пишет:
У меня нет доступа к консоли.
Я только на хостинге в панели могу указать путь к скрипту и время выполнения
Heavenanvil
Отправлено: 26 Августа, 2016 - 08:35:07
Частый гость
Покинул форум
Сообщений всего: 183
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
Если просто добавить в конце файла "echo ($sql);" и перейти по нему в браузере, соответственно он выдает:
Строка cron запроса у меня вот такая: /5 * * * * wget -qO- 'http://мой_сайт.ru/имя_файла.php'
либо вот такая: /5* * * * /usr/bin/php /home/логин/мой_сайт.ru/имя_файла.php
Там же подобным образом прописаны и другие файлы, и они работают без проблем.
Написал запрос в техподдержку, но не уверен, что это их вина.
dcc0
Отправлено: 26 Августа, 2016 - 08:53:16
Участник
Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.