[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: cron и Codeigniter
zvezda_t
Всем привет.

Кто настраивал Codeigniter для запуска контроллера через командную строку.
Помогите мне пожалуйста с настройками!

Нашла в документации

Я попробовала)
В контроллере написала ф-цию, которая выполняет только 1 запрос на изменение таблицы.
Если в браузере набираю: http://mysite.ru/controler_cron/my_fun
Браузер показывает чистый лист, а в БД выполняется мой запрос. Всё отлично.

Когда в командной строке FreeBSD выполняю (/usr/www - каталог, где лежит index.php проекта):
>cd /usr/www
>php index.php controler_cron my_fun

То запрос в БД не выполняется, на экран выходит тело моего шаблона, хотя в контроллере, я никакие шаблоны не вызываю.
В браузере же получилось нормально: чистый лист - всё ок. Почему здесь не получилось? Как исправить?

_____________

Что ты сделал сегодня - для завтра?
"Приидите ко Мне вси труждающиеся и обремененнии и Аз упокою вы, возмите иго Мое на себе и научитеся от Мене яко кроток есмь и смирен сердцем и обрящете покой душам вашим, иго бо Мое благо и бремя Мое легко есть."(Мф. 11:28-30)
AllesKlar
zvezda_t
используешь сессии, $_SERVER, $_POST, $_GET и т.д. ?
В CLI (командная строка) их нет. Т.к. это примочки апача, а в CLI ты напрямую запускаешь скрипт в обход веб-сервера

Судя по словам "конроллер, шаблон" ты имеешь дело с ЧПУ, mod_rewrite - опять же это функции апача.

Если ты работаешь с CLI, то абстрагируйся от веб. PHP становится обычным локальным языком программирования, причем не самым лучшим.

_____________
[продано копирайтерам]
T1grOK
zvezda_t Если ситуация позволяет, то можно кроном сам URL "дернуть".

_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
zvezda_t
сделала, как здесь советуют. Заработало.

запускаю так:
>php /usr/www/cron.php controler_cron my_fun

cron.php:
 <?php
/* стандартные ограничения нам не подходят. ставим свои */
set_time_limit(0);
ini_set('memory_limit', '256M');

/* проверочка. чтобы этот скрипт по неосторожности никто не вызвал из браузера */
if (isset($_SERVER['REMOTE_ADDR'])) die('Permission denied.');

/* вручную подменяем путь URI на основе параметров командной строки */
unset($argv[0]); /* первый параметр нам ни к чему, это имя скрипта */
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'] = '/' . implode('/', $argv) . '/';

/* подключаем framework */
include(dirname(__FILE__).'/index.php');


_____________

Что ты сделал сегодня - для завтра?
"Приидите ко Мне вси труждающиеся и обремененнии и Аз упокою вы, возмите иго Мое на себе и научитеся от Мене яко кроток есмь и смирен сердцем и обрящете покой душам вашим, иго бо Мое благо и бремя Мое легко есть."(Мф. 11:28-30)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.