Как связать Cron + Virtuemart

(Ответов: 1, Просмотров: 1076)
  1. Дипломник Аватар для Roman3211
    • Регистрация: 26.10.2011
    • Сообщений: 191
    • Репутация: 24
    Друзья, знает ли кто, как выполнить публикацию товаров в Virtuemart, через Cron.
    Товары загружены в базу, колонка publish = N, соответственно нужно к примеру раз в день у 3-4 товаров менять на publish = Y.
    Можно конечно самому скрипт накидать, но время-деньги, к тому же скорее всего такой скрипт уже существует. Гугл на эту тему упорно молчит.
    Спасибо.
    Они лучшие http://camelhost.net/
    • 0
  2. Дипломник Аватар для Roman3211
    • Регистрация: 26.10.2011
    • Сообщений: 191
    • Репутация: 24
    В общем не мудрствуя лукаво написал небольшой скрипт для публикации товаров в virtuemart
    PHP код:
    <?php
    require_once('/.......(ваш путь к конфигу)........../configuration.php'); // подключаем конфиг
    $conf=new JConfig;
    /* конектимся к базе */
    $db=mysql_connect($conf->host,$conf->user,$conf->password);
    if (!
    $db) exit;
    $select_status=mysql_select_db($conf->db);
    if (!
    $select_status) exit;

    //загоняем в переменную массив с сегодняшней датой
    $today getdate();

    //здесь будет храниться текущий месяц
    $mesyac $today[mon];

    //здесь выбираем значение исходя из сегодняшнего дня
    switch ($today[mday]) {
        case 
    1:
            
    $i "221"//1 числа включит товар id = 221
            
    break;
        case 
    2:
            
    $i "222"//2 числа включит товар id = 222
            
    break;
        case 
    3:
            
    $i "223"//....
            
    break;
        case 
    4:
            
    $i "224"//....
            
    break;

    //......................................

        
    case 29:
            
    $i "250"//29 числа включит товар id = 250
            
    break;

        default:
            
    $i "";
            break;
    }

    //ну и делаем условие типа (если переменная $i не пустая и если сегодня февраль, то включаем нужный товар
    if ($i && $mesyac "2"){    
    $query_my "UPDATE `jos_vm_product` 
    SET `product_publish` = 'Y' 
    WHERE `jos_vm_product`.`product_id` = 
    $i ";    
    mysql_query($query_my) or die(mysql_error());    
    };
    ?>
    в case записываем нужные нам id товаров на каждый день, сохраняем и месяц спим спокойно.
    как я уже говорил, скрипт простецкий. Можно конечно заморочиться массивами и навести красоту, но мне главное чтобы работало и не отнимало времени.

    Кстати так как конфиг мы подключали относительными путями
    PHP код:
    require_once('/.......(ваш путь к конфигу)........../configuration.php'); // подключаем конфиг 
    то в Cron надо писать задачу через wget:
    /usr/local/bin/wget -O /dev/null -q http://ваш_домен.ru/script.php
    во всяком случае у меня на хостинге так, иначе будет выдавать ошибку.
    Они лучшие http://camelhost.net/
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
cron и wget
Хостинг и Серверы 7 01.04.2017 02:01
Вопрос по Virtuemart
Joomla 5 22.01.2012 21:06
исполнять cron раз в секунду
Web программирование 1 13.11.2010 01:33
Вопрос про cron
Вопросы от новичков 11 17.04.2010 00:42

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры