Hello, I'm getting problem file or directory not found when I try to load the file from another directory. Kindly help me fix this problem. Thanks you.
Website
-classes
-core.php
-inc
-autoload.php
-config.php
-index.php
Index.php
<?php
require_once('inc/autoload.php');
$core = new Core();
$core->run();
autoload.php
<?php
require_once('config.php');
function __autoload($class_name) {
$class = explode("_", $class_name);
$path = implode("/", $class).".php";
require_once($path); <!-- echo $path shows 'core.php' -->
}
config.php
<?php
if(!isset($_SESSION)) {
session_start();
}
// site domain name with http
defined("SITE_URL")
|| define("SITE_URL", "http://".$_SERVER['SERVER_NAME']);
// directory separator
defined("DS")
|| define("DS", DIRECTORY_SEPARATOR);
// root path
defined("ROOT_PATH")
|| define("ROOT_PATH", realpath(dirname(__FILE__) . DS."..".DS));
// classes folder
defined("CLASSES_DIR")
|| define("CLASSES_DIR", "classes");
// pages directory
defined("PAGES_DIR")
|| define("PAGES_DIR", "pages");
// modules folder
defined("MOD_DIR")
|| define("MOD_DIR", "mod");
// inc folder
defined("INC_DIR")
|| define("INC_DIR", "inc");
// templates folder
defined("TEMPLATE_DIR")
|| define("TEMPLATE_DIR", "template");
// emails path
defined("EMAILS_PATH")
|| define("EMAILS_PATH", ROOT_PATH.DS."emails");
// catalogue images path
defined("CATALOGUE_PATH")
|| define("CATALOGUE_PATH", ROOT_PATH.DS."media".DS."catalogue");
// add all above directories to the include path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(ROOT_PATH.DS.CLASSES_DIR),
realpath(ROOT_PATH.DS.PAGES_DIR),
realpath(ROOT_PATH.DS.MOD_DIR),
realpath(ROOT_PATH.DS.INC_DIR),
realpath(ROOT_PATH.DS.TEMPLATE_DIR),
get_include_path()
)));
Core.php
<?php
class Core {
public function run() {
ob_start();
require_once(Url::getPage());
ob_get_flush();
}
}
Thanks You.