Панель управления в админке грузится долго

Тема в разделе "Ошибки и их решения", создана пользователем Ален, 12 сен 2015.

  1. Ален

    Ален Эксперт

    Сообщения:
    2.056
    Симпатии:
    640
    Вижу такие вопросы!

    Панель управления в админке грузится долго, начинает тормозить и длится около минуты.
    У меня кстати 20 секунд )) на локалке
    Именно при нажатии ссылки Панель управления.
    В модули итд заходит быстрою

    Такое бывает и на 2.х и на 1.5х версиях

    Решение!


    В админке Меню - Система - Настройки - вкладка Локализация отключаем Автоматическое обновление валюты.

    Такие тормоза бывают когда слабый интернет (если сайт на локалке) или проблема с доступом к сайту с курсами... а сайт таков http://download.finance.yahoo.com ... ну далее параметры..
     
    Последнее редактирование: 12 сен 2015
    RoS и Bkmz нравится это.
  2. Brogan

    Brogan Новичок

    Сообщения:
    18
    Симпатии:
    0
    Благодарю! Решение помогло. Но почему так происходит, и есть ли вариант без отключения автообновления курса ?
     
  3. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    наверно есть, можно ведь запускать не во время старта админки, а чуть позже например. В общем нужно протестировать.
    На хостинге такое обычно не происходит, т.е не тормозит. А если тормозит, то это вирус от всяких бесплатных модулей с левых сайтов
     
  4. Brogan

    Brogan Новичок

    Сообщения:
    18
    Симпатии:
    0
    Спасибо за совет. Насчет вирусов - вполне может быть
     
  5. Ecsiron

    Ecsiron Продвинутый пользователь

    Сообщения:
    415
    Симпатии:
    53
    А может кто-нибудь уже сделал cron.php, который будет запускаться на хостинге для обновления курсов валют?
    А то если не заходишь в админку, то висит себе товар по старым курсам, а евро давно упало или выросло.
    часа два ищу и не могу найти, но ведь был же такой...
     
  6. Ален

    Ален Эксперт

    Сообщения:
    2.056
    Симпатии:
    640
    Сделать не проблема, просто выделить и все. Как всегда, нужно знать точную версию движка.
     
  7. Ecsiron

    Ecsiron Продвинутый пользователь

    Сообщения:
    415
    Симпатии:
    53
    А вот я обошелся без версии движка. Мне оказалось проще такой написать.
    Т.е. мой скрипт работает на любых сайтах и версиях, где есть есть таблица и
    установлена валюта по умолчанию Рубль - RUB.
    Обновление курсов валют берет из ЦБ РФ и записывает их в базу.

    Установка:
    1 Создать файл php.
    2 Скопировать в него код.
    3 Отредактировать путь.
    4 Папка админ должна быть защищена по IP адресу.
    5 Залить в папку admin.
    6 Настроить cron

    PHP:
    <?php

    /*
    * CURRENCY UPDATER  (19.08.2016)
    * Copy this File: admin/
    * For OpenCart 2.2 and any
    * Default Currency ONLY RUB!!!
    * To ADD Value add mysql_query
    */
    // Install
    require_once('ПУТЬ ДО ФАЙЛА/config.php');
    // End

    class ExchangeRatesCBRF
    {
        var 
    $rates;
        function 
    __construct($date null)
        {
            
    $client = new SoapClient("http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL");
            if (!isset(
    $date)) $date date("Y-m-d");
            
    $curs $client->GetCursOnDate(array("On_date" => $date));
            
    $this->rates = new SimpleXMLElement($curs->GetCursOnDateResult->any);
        }

        function 
    GetRate ($code)
        {
            
    $code1 = (int)$code;
            if (
    $code1!=0)
            {
                
    $result $this->rates->xpath('ValuteData/ValuteCursOnDate/Vcode[.='.$code.']/parent::*');
            }
            else
            {
                
    $result $this->rates->xpath('ValuteData/ValuteCursOnDate/VchCode[.="'.$code.'"]/parent::*');
            }
            if (!
    $result)
            {
                return 
    false;
            }
            else
            {
                
    $vc = (float)$result[0]->Vcurs;
                
    $vn = (int)$result[0]->Vnom;
                return (
    $vn/$vc);
            }
        }
    }

    $rates = new ExchangeRatesCBRF();
    $db mysql_connect(DB_HOSTNAME,DB_USERNAME,DB_PASSWORD);
    mysql_select_db(DB_DATABASE,$db);

    $query mysql_query ("UPDATE " DB_PREFIX "currency SET value = '" $rates->GetRate("USD") . "', date_modified = NOW() WHERE code = 'USD'");
    $query mysql_query ("UPDATE " DB_PREFIX "currency SET value = '" $rates->GetRate("EUR") . "', date_modified = NOW() WHERE code = 'EUR'");

    ?>
    Делаю для себя и это бесплатное обновление валют из ЦБ РФ с основной валютой рубли для опенкарт выкладываю исключительно в ознакомительных целях. Ни на каких других сборках не тестировал. Использую USD, EUR и RUB
    Использовать можно на свой страх и риск, без гарантий и претензий!) У меня он поинтереснее будет, чем этот вариант)
     
    Последнее редактирование: 19 авг 2016
  8. DiNoZavr

    DiNoZavr Пользователь

    Сообщения:
    136
    Симпатии:
    10
    Здравствуйте, установил на 3.0.2.0 и появилась ошибка подключения, можете подсказать как решить?

    PHP log
    Код:
    PHP Fatal error:  Uncaught Error: Call to undefined function mysql_connect() in /home/a/data/site.ru/public_html/asdasd.php:50
    Stack trace:
    #0 {main}
      thrown in /home/a/data/site.ru/public_html/asdasd.php on line 50
    
     
  9. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    ЧТО это???
     
  10. DiNoZavr

    DiNoZavr Пользователь

    Сообщения:
    136
    Симпатии:
    10
  11. Chukcha

    Chukcha Специалист

    Сообщения:
    3.013
    Симпатии:
    685
    Ясно, наверное долгий ответ сервера..