PrestaShop 1.6 Ошибка: PHP Fatal error: Undefined class constant 'MODE_CONTRIB'

Автор MXM, 16 января 2015, 15:31:17

« назад - далее »

MXM

Всем привет!
Ситуация: установка 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;
Подскажите в чём трабла?
Заранее благодарю!

Руслан Л

Цитата: coder от 13 января 2015, 18:03:31
Версия 1.6.0.11 сырая багов много. Так что рано вы сменили версию. Подождать пару недель нужно, если не хотите возиться с ошибками.

MXM

Руслан Л, привет! Понял. Т.е. она совсем-совсем новая? Я просто отстал от жизни Престы, загулял так сказать. ;) А где скачать стаб.версию и какая она по номеру?

DarinSr

Измените 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;

DarinSr

#4
В prestashop версии 1.6.0.11 действительно много ошибок. Если вы не хотите работать над исправлением, то лучше используйте prestashop версии 1.6.0.9.

MXM

DarinSr, спасибо за ответ! Понял. А как с оф.сайта скачать эту версию, есть ссылка на листинг версий для скачки?

mAgency

Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.

MXM

mAgency, спасибо! А вот вопрос, разве не автоматом обновление происходит? Установлю я сейчас 9-ку, а он - раз, и обновится на 11-ую... не? :) Тупой вопрос.. :)

mAgency

Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.

MXM

mAgency, спс! Пнл. 9-ка то, что надо, встала без проблем, подключилась без проблем.

Bestimweb24

У меня работает этот код выше на пхп 5.5 на 5.6 не срабатывает, но если обновления есть без регистрации обновлят.

DarinSr

Константы MODE_CONTRIB нет в prestashop. Есть MODE_STD_CONTRIB. В новой версии опечатка. Если исправить наименование константы, то этой ошибки быть не должно.

eugenyh

Цитата: DarinSr от 23 января 2015, 20:52:08
Константы MODE_CONTRIB нет в prestashop. Есть MODE_STD_CONTRIB. В новой версии опечатка. Если исправить наименование константы, то этой ошибки быть не должно.

Абсолютно верно. У меня была такая же ошибка после того, как я подключил учетку на prestashop.com.
Поменял MODE_CONTRIB на Есть MODE_STD_CONTRIB - все заработало.

ikad

Fatal error: Undefined class constant 'MODE_STD_CONTRIB' in /classes/controller/AdminController.php on line 527

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