2014-12-13 7 views
0

Итак, у меня есть (предположительно) простая проблема для исправления, которая в настоящее время торжествует над мной.PHP-файл, который не распознается, содержит

Моя раскладка начинается с основного регистрационного файла, в главном каталоге:

registration.php

<?php 

// Include connection to database 
require "config/db.php"; 

// Include website language class 
require "classes/website_language.php"; 

// Include registration class 
require "classes/registration.php"; 

// Include the page 
include "views/registration.php"; 

Моя проблема заключается в том, что классы/registration.php НЕ включая конфигурации/дб .php или classes/website_language.php, хотя я включаю эти файлы перед классами/registration.php в файл MAIN.

Поскольку config/db.php и classes/website_language.php включены в основной файл регистрации до классов/registration.php, не должны ли классы/registration.php извлекать данные из этих двух включенных файлов?

Я исправил это, включив config/db.php и classes/website_language.php в самом файле classes/registration.php, но я предпочел бы, если это возможно, включить эти файлы в файл MAIN.

+0

проверка, регистрация.php есть какой-либо ошибка. – saru

+0

Не забудьте отметить правильный ответ (и дать свои отзывы), чтобы помочь другим людям, которые (или будут) представлены с той же проблемой –

ответ

0

попробовать это:

require("config/db.php"); 
require("classes/website_language.php"); 
require("views/registration.php"); 
0

Я думаю, что ваша проблема в том, что вы не считали, что «включает в себя/требует» по сравнению с файлом, делающего в том числе.

Давайте сделаем пример

FOLDER СТРУКТУРА

root/index.php 
root/folder1/file1.php 
root/folder1/file2.php 

ПРОБЛЕМА

index.php 

include "folder1/file1.php"; 

file1.php 

include "file2.php"; 

"включить "file2.php";" будет выполняться index.php, поэтому index.php будет искать файл с именем file2.php в той же папке (в этом случае root). Конечно, index.php не найдет такой файл.

РЕШЕНИЕ

index.php 

include "folder1/file1.php"; 

file1.php 

include dirname(__FILE__) . "/file2.php"; 

Таким образом, решение должно работать с абсолютными путями - и вы можете смешивать родственников и абсолютные пути, используя имя-каталога (FILE), чтобы получить каталог, содержащий файл.

Смежные вопросы