Ошибка после установки пожалуйста помогите

Скачал здесь с форума oscommerce 2,2 ставлю на денвер после установки жму каталог там ошибка сверху
Deprecated: Function eregi() is deprecated in Z:\home\localhost\www\shop1\includes\classes\language.php on line 87
повторяется много раз и далее шаблон магазина,если жму переход в админ то следующая вещь
Deprecated: Function eregi() is deprecated in Z:\home\localhost\www\shop1\includes\classes\language.php on line 87
повторяется много раз и в конце один раз такая ошибка
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\shop1\admin\includes\classes\language.php:87) in Z:\home\localhost\www\shop1\admin\includes\functions\general.php on line 22

Причем не понял почему скачал денвер а там php почему то на английском это не из за этого ошибка пожалуйста помогите очень нужна помощь!Спасибо

*

dima

  • *
  • 72

Файл конфигурации правильно сконфигурировали?
Выкладывайте, посмотрим.

Файл конфигурации правильно сконфигурировали?
Выкладывайте, посмотрим.
А как должен быть сконфигурирован это файл? У меня такая же ошибка после установки на Denwer
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

та же ошибка ничего не конфигурировалось, скачан дистрибутив с сайта этого форума, поставлен, сразу после установки пытаюсь запустить админ-панель и выдает многократно строку об ошибке:
Deprecated: Function eregi() is deprecated in W:\home\test2\www\catalog\admin\includes\classes\language.php on line 87

далее в самом низу :
Warning: Cannot modify header information - headers already sent by (output started at W:\home\test2\www\catalog\admin\includes\classes\language.php:87) in W:\home\test2\www\catalog\admin\includes\functions\general.php on line 22


как исправить или помогите разобраться как это произошло

Данная ошибка исправляется следующим образом: в файле osc\includes\classes\language.php находим строку 87:

if (eregi('^(' . $value . ')(;q=[0-9]\\.[0-9])?$', $this->browser_languages[$i]) && isset($this->catalog_languages[$key])) {

и меняем ее на:

if (preg_match('/^(' . $value . ')(;q=[0-9]\\.[0-9])?$/i', $this->browser_languages[$i]) && isset($this->catalog_languages[$key])) {

Если проблема именно в этом, замена строки должна все исправить.

Эта ошибка на хостингах с PHP 5.3 - там некоторые команды убраны уже, и надо переписывать их.

Допустим все eregi меняются на preg_match и меняется режим разбора (добавляются слэши) - полный список можно найти в документации по пхп 5.3