Вход • Регистрация

Какая то жесть в админке

  • 02 января 2017 г. , редакция: 02 января 2017 г.
  • 30 числа днем заносил фотки товаров все было гуд. Решил проверить обновление CMS , нажал "проверить обновления". Написало, что есть новые обновления. Я не стал обновляться, решил скачать БД. Нажимаю на экспорт БД "скачать файл". Открывается белый пустой лист и ничего не происходит. Попробовал так несколько раз. Ничего. Только пустой белый лист. Подумал, что глюк написал в службу поддержки. И поехал на работу. С рабочего компа решил продолжить вносить фото к товарам, но при попытке сохранить что то ничего не происходило. Совсем ничего. Думаю: ладно дома сделаю. Фигня какая то. Перед новым годом ничего не делал, забегался. Сегодня с домашнего компа захожу и то же самое. Ничего сохранить не могу и выскакивает постоянно ошибка, написана она внизу страницы. При одном нажатии просто ошибка с каким то описанием, при повторном код ещё какой то. А при попытке нажать на проверить обновление вообще жесть лезит какая то. Что это и как побороть?
    Прикрепил видео экрана
    https://youtu.be/ciqgyPMM7To
    • 02 января 2017 г.
    • На видео первая ошибка - причина: недостаточно выделенной памяти для исполнения скрипта. Решение: необходимо выделить больше памяти.
      На видео вторая ошибка - причина: при сохранении некорректно отрабатывается скрипт. Решение:
      1. Необходимо открыть карточку товара и ничего не меняя сохранить ее. Если ошибки не будет, то некорректная работа с буфером обмена.
      2. Необходимо открыть карточку товара и ничего не меняя сохранить ее. Если ошибки будет, то отключите активные темы cms, таким образом оставив в работе cms только ее оригинальные файлы. Повторите пересохранение карточки товара, не вводя данных. Если ошибки не будет, то ошибка в Ваших корректировках cms.
      3. Если же ошибка повторяется, то самый простой способ - просите администратора хостинга откатить образ сайта на день, до возникновения ошибки. Либо подключайте специалиста, т.к. для решения проблемы все же нужен доступ к хостингу.

      Успехов.
      • 02 января 2017 г.
      • Виталий, спасибо за ответ.
        Только я в этом ничего не понимаю) А сейчас праздники никого не могу вызвонить(
        1. "На видео первая ошибка - причина: недостаточно выделенной памяти для исполнения скрипта. Решение: необходимо выделить больше памяти."
        А как это делается и где?
        2. "1. Необходимо открыть карточку товара и ничего не меняя сохранить ее. Если ошибки не будет, то некорректная работа с буфером обмена."
        есть ошибка
        3. "Необходимо открыть карточку товара и ничего не меняя сохранить ее. Если ошибки будет, то отключите активные темы cms, таким образом оставив в работе cms только ее оригинальные файлы. Повторите пересохранение карточки товара, не вводя данных. Если ошибки не будет, то ошибка в Ваших корректировках cms."
        А как отключить темы? Их в админке можно только удалить...
        4. "просите администратора хостинга откатить образ сайта на день, до возникновения ошибки. "
        Вот это меня больше всего волнует. Хостинг в nic.ru. В настройках есть раздел резервные копии. И они там только на 7 дней. И у меня осталось 2-3 дня чтобы можно было откатиться. А более ранюю версию, если за это время не успею, можно просить у поддержки. Или они не хранят более 7 дней?
        • 02 января 2017 г.
        • Цитата
          Только я в этом ничего не понимаю)
          Цитата
          В настройках есть раздел резервные копии. И они там только на 7 дней.
          На мой взгляд в таком случае лучше всего сделать следующее:
          1. С помощью phpmyadmin снимаете полный дамп базы данных и сохраняете себе на компьютер. Если не знаете как, то просите администраторов хостинга.
          2. С помощью ftp-клиента копируете себе на компьютер все файлы сайта. Опять же, если не знаете как это сделать, просите администратора хостинга.
          3. Учитывая ограниченность во времени хранения резервных копий просите администратора хостинга или делаете самостоятельно возврат к состоянию на день до событий, провоцирующих ошибку.
          4. Так как произойдет откат состояния сайта, то собьется метка обновления Вашей cms. Соответственно при последующих обновлениях cms Ваша лицензия не пройдет валидацию. Поэтому пишите в ТП diafan.cms о необходимости сброса валидности лицензии при обновлении cms.
          5. Теперь со спокойной душой размещаете скаченный образ сайта на резервном хостинге и поручаете специалистам разобраться в чем причина ошибки или же делаете это самостоятельно. Это связано с тем, что для решения Вашей ошибки все же нужен доступ к cms, т.к. слишком много вариантов возникновения такой ошибки.
          • 02 января 2017 г.
          • Виталий, сам я этого точно ничего не смогу сделать... Вы бы не смогли мне все восстановить? Естественно за денюшку) А то беда совсем.
            • 03 января 2017 г. , редакция: 04 января 2017 г.
            • И так. На самом деле все как всегда.
              Цитата
              жесть в админке
              в результате вылета сайта за пределы лимита памяти и времени исполнения скриптов.

              Отмечу для тех кому интересно. Всегда, прежде чем увеличивать лимиты, необходимо разобраться в причинах. Соответственно причина в данном случае из-за тонны некорректного "шлака" в таблице {shop_price}. Так, например, к одному товара было привязано более 2000 записей о цене. И это у большинства товаров. При этом, если внимательно посмотреть на записи, то это массовые дубли. И не только дубли, большинство цен ссылались на не существующие базовые цены, также ссылались на несуществующие значения зависимых характеристик. Основная причина появления таких записей - это не корректная работа с ценами. Например, удаляем базовую цену, а ссылки на нее оставляем. И т.п.

              В основном такие записи о ценах, являлись порождением цен, указанных в валюте. При этом базовые цены в валюте уже могли не существовать в списке.

              Все бы ничего. Заказчик не сразу бы заметил бы глюки сайта, если бы не дополнительный модуль обновления курса валют, который инициировал пересчет, который, в свою очередь, множил по расписанию не корректные записи цен. Таким образом некорректные цены товара множились и множились.

              Сразу отмечу. Модуль обновления курса валют работал нормально - не в нем причина. Но обращаюсь к автору данного модуля - поправьте в файле shop.admin.currency.custom.php следующий код
              Код
              public $variables_list = array (
              на этот
              Код
              replace public $variables_list = array (
              Уверен, это была просто опечатка, но все же ее лучше исправить.

              Далее. Наверно на текущий момент актуально для тех, кто используют сторонние модули к diafan.cms. После активации модуля/шаблона, если в теме присутствует файл install.sql, то обязательно переименуйте его в install_disable.sql (если хотите, то можете присвоить любое другое имя). Причина: если повторно активировать тему, то cms повтороно выполнит все запросы, указанные в файле install.sql, а этого лучше не делать. Например, перезапишутся Ваши данные на демонстрационные. Если там были прописаны запросы на создание таблиц или полей в них, то повторное исполнение приведет к ошибкам (хотя Вы их можете и незаметить). В общем решать Вам.

              Далее для тех, кто пишет корректировки к cms - придерживайтесь правил кастомизации diafan.cms.

              Для тех, кто пытается корректировать файл gzip.php (думаю автор этих корректировок все поймет) - старайтесь корректировать вдумчиво (это я из добрых побуждений). Поясню, как раз на видео Алексей (Kadur) продемонстрировал ошибку, которая возникает из-за такой мелочи

              Да, еще одно. Это для пользователей cms - не обязательно, когда Вы чистите папку cache, удалять файл .htaccess (как бы он там не просто так).

              Как-то так.
            • 09 января 2017 г.
            • Теперь исправление природы ошибки. Важна для тех, кто использует при синхронизации цены, указанные в валюте. Пишу здесь так как не все заинтересованные лица смотрят раздел Ошибки

              Ошибка проявляется после синхронизации цен, указанных в валюте, между cms и "Мой склад" / "1c".

              Краткое описание ошибки: цены указанные в валюте при синхронизации дублируются вместе с теми же ценами, указанными в рублях, вместо требуемой перезаписи цен.

              Решение: в файле /modules/shop/shop.1c.php необходимо найти строчку (такая строчка там одна единственная)
              Код
              $del_prices = DB::query_result("SELECT GROUP_CONCAT(price_id SEPARATOR ',') FROM {shop_price} WHERE good_id=%d AND price_id NOT IN (".implode(",", $price_goods[$good_id]).") AND price_id=id", $good_id);
              и заменить ее на данную
              Код
              $del_prices = DB::query_result("SELECT GROUP_CONCAT(id SEPARATOR ',') FROM {shop_price} WHERE good_id=%d AND id NOT IN (".implode(",", $price_goods[$good_id]).")", $good_id);
              Также, в том же файле shop.1c.php необходимо найти строчку (такая строчка там одна единственная)
              Код
              DB::query("DELETE FROM {shop_price} WHERE price_id IN (".$del_prices.")");
              и заменить ее на данную
              Код
              DB::query("DELETE FROM {shop_price} WHERE id IN (".$del_prices.")");


              Все, проблема решена.

              Как не странно, вот такая вот мелкая опечатка в коде, может быстро положить сайт :))

              Успехов.
  • 02 января 2017 г.
  • Цитата
    1. "На видео первая ошибка - причина: недостаточно выделенной памяти для исполнения скрипта. Решение: необходимо выделить больше памяти."
    А как это делается и где?

    Делается на хостинге , если в тарифном плане не предусмотрено увеличение памяти ,переходите на другой тариф.
    Цитата
    2. "1. Необходимо открыть карточку товара и ничего не меняя сохранить ее. Если ошибки не будет, то некорректная работа с буфером обмена."
    есть ошибка
    3. "Необходимо открыть карточку товара и ничего не меняя сохранить ее. Если ошибки будет, то отключите активные темы cms, таким образом оставив в работе cms только ее оригинальные файлы. Повторите пересохранение карточки товара, не вводя данных. Если ошибки не будет, то ошибка в Ваших корректировках cms."
    А как отключить темы? Их в админке можно только удалить...

    На видео показано.
    Цитата
    "просите администратора хостинга откатить образ сайта на день, до возникновения ошибки. "
    Вот это меня больше всего волнует. Хостинг в nic.ru. В настройках есть раздел резервные копии. И они там только на 7 дней. И у меня осталось 2-3 дня чтобы можно было откатиться. А более ранюю версию, если за это время не успею, можно просить у поддержки. Или они не хранят более 7 дней?

    Скачайте себе на компьютер работоспособную резервную копию с хостинга.
  • 02 января 2017 г.
  • Отключил темы, все то же самое.
    В параметрах сайта в режиме разработки не могу ничего сделать, кнопка сохранить не работает как и везде.
    Плюс там уже все включено. Как отключить не знаю. Может сеошники что намутили...
    Цитата
    Скачайте себе на компьютер работоспособную резервную копию с хостинга.

    Там только восстановить можно.
    ЗЫ Всё блин, умерло все. Отключил тему, включил, сбились все контакты, инфа частично, вернуть все не получается, кнопки сохранить не работают.
    • 02 января 2017 г. , редакция: 02 января 2017 г.
    • Цитата
      Отключил тему, включил, сбились все контакты, инфа частично, вернуть все не получается
      Это по тому, что в папке с темой у Вас лежит файл install.sql, в котором прописан запрос на добавление/изменения данных в базе данных. Вот и сбились данные. Такой файл нужен только на момент установки темы, после его необходимо переименовывать, чтобы не было повторных изменений в базе данных (как раз сейчас корректирую cms на предмет одноразовых изменений в базе данных при установках/активациях тем и дополнений к cms, т.к. большинство пользователей предпочитают все делать самостоятельно, а на деле многое не понимают).
  • 02 января 2017 г.
  • Да я сам только текста пишу, и фотки добавляю) Более никуда не лезу.
    Я 30 числа все таки скачал с рабочего компа БД (но глюк уже был в админке) . На 30 число есть БД и резервная копия.

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум