Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Fatal error: Class 'Config' not found in \system\framework.php on line 6


Recommended Posts

Добрый день

Пробую перенести сайт на другой хост. Выдает ошибку при переносе

Fatal error: Class 'Config' not found in \system\framework.php on line 6

 

В framework.php ругается на строку:

// Config
$config = new Config();
$config->load('default');
$config->load($application_config);
$registry->set('config', $config);

 

Класс registry объявлен, файлы config.php  в папке system/library есть 

 

В чём может быть проблема? При переносе, файлы были полностью перенесены

Надіслати
Поділитися на інших сайтах


13 минут назад, nikifalex сказал:

config.php

В system/library/config.php прописано:

<?php
class Config {
    private $data = array();

    public function get($key) {
        return (isset($this->data[$key]) ? $this->data[$key] : null);
    }

    public function set($key, $value) {
        $this->data[$key] = $value;
    }

    public function has($key) {
        return isset($this->data[$key]);
    }

    public function load($filename) {
        $file = DIR_CONFIG . $filename . '.php';

        if (file_exists($file)) {
            $_ = array();

            require($file);

            $this->data = array_merge($this->data, $_);
        } else {
            trigger_error('Error: Could not load config ' . $filename . '!');
            exit();
        }
    }

Надіслати
Поділитися на інших сайтах


17 минут назад, nikifalex сказал:

в корне

В корневом конфиге прописаны пути:

// HTTP
define('HTTP_SERVER', 'сайт');

// HTTPS
define('HTTPS_SERVER', 'сайт');

 

// DIR
define('DIR_APPLICATION', '/catalog/');
define('DIR_SYSTEM', '/system/');
define('DIR_IMAGE', '/image/');
define('DIR_LANGUAGE', '/catalog/language/');
define('DIR_TEMPLATE', '/catalog/view/theme/');
define('DIR_CONFIG', '/system/config/');
define('DIR_CACHE', '/system/storage/cache/');
define('DIR_DOWNLOAD', '/system/storage/download/');
define('DIR_LOGS', '/system/storage/logs/');
define('DIR_MODIFICATION', '/system/storage/modification/');
define('DIR_UPLOAD', '/system/storage/upload/');

// DB
define('DB_DRIVER', 'mysqli');
define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_DATABASE', 'база');
define('DB_PORT', '3306');
define('DB_PREFIX', 'преф');

 

Пути такие, т.к. пытаюсь локально открыть сайт, на openserver

Змінено користувачем Ariel
Надіслати
Поділитися на інших сайтах


23 минуты назад, nikifalex сказал:

зачем вы константы в кавычках сделали?

Показалось, так удобнее

Перевела в двойные кавычки, но ситуация не поменялась

Змінено користувачем Ariel
Надіслати
Поділитися на інших сайтах


пути в конфиге неверно указаны

 

59 минут назад, Ariel сказал:

Пути такие, т.к. пытаюсь локально открыть сайт, на openserver

вместо

define('DIR_APPLICATION', '/catalog/');

 

должно быть что-то вида

define('DIR_APPLICATION', 'M:/OpenServer/domains/os2302.ne/catalog/');

т.е. полный путь директории с сайтом

Надіслати
Поділитися на інших сайтах

11 минут назад, nikifalex сказал:

1) поставьте тройные кавычки.

2) поставьте кавычку и запятую.

3) поставьте восклицательный знак, а то может опенкарт плохо видит.

4) поставьте три восклицательных знака, а то может он еще и плохо слышит.

5) уберите всю эту самодеятельность с кавычками.

 

Попробовала, но есть нюанс:

В index.php имеется запись:

// Install
if (!defined("DIR_APPLICATION")) {
    header('Location: install/index.php');
    exit;
}

 

И если я меняю кавычки в config.php, то происходит зацикливание /install.

Если убрать ! из install, и добавить в config, то остается ошибка в определением класса config

Если убрать тройные_кавычки/воскл.знак и прочее из install и config, то происходит то же самое зацикливание :( 

Много вариантов перебрала, либо цикл, либо ошибка определения класса config

Надіслати
Поділитися на інших сайтах


17 минут назад, AlexDW сказал:

пути в конфиге неверно указаны

 

вместо

define('DIR_APPLICATION', '/catalog/');

 

должно быть что-то вида

define('DIR_APPLICATION', 'M:/OpenServer/domains/os2302.ne/catalog/');

т.е. полный путь директории с сайтом

Ве-ли-ко-ле-пно!

Сработало. Такое простое решение, над такой неудобной проблемой.

Спасибо огромное, AlexDW!

 @nikifalex и вам спасибо, маленький урок я все же получила

Надіслати
Поділитися на інших сайтах


  • 1 year later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.