Автор Тема: PrestaShop 1.6 Ошибка: PHP Fatal error: Undefined class constant 'MODE_CONTRIB'  (Прочитано 2697 раз)

16 Январь 2015, 15:31:17
  • Фрилансер
  • *
  • Сообщений: 139
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Всем привет!
Ситуация: установка PrestaShop™ 1.6.0.11 на хостинг прошла успешно, но зайдя в раздел Модули и введя логин и пароль для присоединить магазина к маркету PrestaShop для автоматического импорта приобретенных дополнений - появляется белый экран (500-ая ошибка). Спросил у хостинга лог, ответил:
Цитировать
PHP Fatal error:  Undefined class constant 'MODE_CONTRIB' in /home/clients/фтп/domains/домен.ком/html/classes/controller/AdminController.php on line 405
Установка была под PHP 5.4, затем поменяли на 5.3, но проблема осталась.

По коду, красным выделил 405ую строку:
Цитировать
      // Set context mode
      if (defined('_PS_HOST_MODE_') && _PS_HOST_MODE_)
      {
         if (isset($this->context->cookie->is_contributor) && (int)$this->context->cookie->is_contributor === 1)
            $this->context->mode = Context::MODE_CONTRIB_HOST;
         else
            $this->context->mode = Context::MODE_HOST;
      }
      elseif (isset($this->context->cookie->is_contributor) && (int)$this->context->cookie->is_contributor === 1)
         $this->context->mode = Context::MODE_CONTRIB;
      else
         $this->context->mode = Context::MODE_STD;
Подскажите в чём трабла?
Заранее благодарю!
16 Январь 2015, 17:08:11
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 885
  • Репутация: +206/-0
    • Просмотр профиля
Версия 1.6.0.11 сырая багов много. Так что рано вы сменили версию. Подождать пару недель нужно, если не хотите возиться с ошибками.
16 Январь 2015, 17:35:53
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 139
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Руслан Л, привет! Понял. Т.е. она совсем-совсем новая? Я просто отстал от жизни Престы, загулял так сказать. ;) А где скачать стаб.версию и какая она по номеру?
16 Январь 2015, 17:40:19
Ответ #3
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Измените AdminController.php
// Set context mode
if (defined('_PS_HOST_MODE_') && _PS_HOST_MODE_)
{
if (isset($this->context->cookie->is_contributor) && (int)$this->context->cookie->is_contributor === 1)
$this->context->mode = Context::MODE_HOST_CONTRIB;
else
$this->context->mode = Context::MODE_HOST;
}
elseif (isset($this->context->cookie->is_contributor) && (int)$this->context->cookie->is_contributor === 1)
$this->context->mode = Context::MODE_STD_CONTRIB;
else
$this->context->mode = Context::MODE_STD;
16 Январь 2015, 17:42:20
Ответ #4
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В prestashop версии 1.6.0.11 действительно много ошибок. Если вы не хотите работать над исправлением, то лучше используйте prestashop версии 1.6.0.9.
16 Январь 2015, 18:31:40
Ответ #5
  • Фрилансер
  • *
  • Сообщений: 139
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
DarinSr, спасибо за ответ! Понял. А как с оф.сайта скачать эту версию, есть ссылка на листинг версий для скачки?
16 Январь 2015, 20:36:23
Ответ #6
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
16 Январь 2015, 20:50:12
Ответ #7
  • Фрилансер
  • *
  • Сообщений: 139
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
mAgency, спасибо! А вот вопрос, разве не автоматом обновление происходит? Установлю я сейчас 9-ку, а он - раз, и обновится на 11-ую... не? :) Тупой вопрос.. :)
16 Январь 2015, 21:07:22
Ответ #8
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Обновление происходит в ручную.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
17 Январь 2015, 14:05:02
Ответ #9
  • Фрилансер
  • *
  • Сообщений: 139
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
mAgency, спс! Пнл. 9-ка то, что надо, встала без проблем, подключилась без проблем.
23 Январь 2015, 20:45:54
Ответ #10
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
    • BestImWeb24
У меня работает этот код выше на пхп 5.5 на 5.6 не срабатывает, но если обновления есть без регистрации обновлят.
23 Январь 2015, 20:52:08
Ответ #11
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Константы MODE_CONTRIB нет в prestashop. Есть MODE_STD_CONTRIB. В новой версии опечатка. Если исправить наименование константы, то этой ошибки быть не должно.
05 Февраль 2015, 14:45:51
Ответ #12
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Константы MODE_CONTRIB нет в prestashop. Есть MODE_STD_CONTRIB. В новой версии опечатка. Если исправить наименование константы, то этой ошибки быть не должно.

Абсолютно верно. У меня была такая же ошибка после того, как я подключил учетку на prestashop.com.
Поменял MODE_CONTRIB на Есть MODE_STD_CONTRIB - все заработало.
12 Декабрь 2018, 17:22:48
Ответ #13
  • Пользователь
  • **
  • Сообщений: 76
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Fatal error: Undefined class constant 'MODE_STD_CONTRIB' in /classes/controller/AdminController.php on line 527

А если такая ошибка )
после обновления с 1,6,09 до 1,6,1,23