Reputation: 444
I am using include function and it is giving errors. That is file not found. In the root directory I have - index.php and config.php
index.php includes config.php and has some other data.
config.php has database details and includes function/function.php
There is a folder user and it has a file calculate.php in calculate.php I have included AJAX functionality and a file is loaded in it on AJAX call. File is cal2.php and it is located in user folder. Now this, cal2.php has a include function for config.php like:
include "../config.php";
When this cal2.php is loaded from calculate.php
function/function.php file is not loaded. It shows file not found for function/function.php
So, file structure is:
How to proceed and not have function.php include error for cal2.php
Upvotes: 3
Views: 24817
Reputation: 12628
You should change config.php to use an absolute path to functions.php. If you have PHP 5.3 or greater, do it like this:
include __DIR__.'/functions/functions.php';
If you are still using PHP 5.2 (or, god forbid, something earlier), you can do it this way:
$dir = dirname(__FILE__);
include $dir.'/functions/functions.php';
The __FILE__ magic constant always contains the value of the current PHP file name, so the dirname(__FILE__)
call will give you the full filesystem path of the current script.
Upvotes: 7
Reputation: 3634
Use absolute path to include file:
$_SERVER['DOCUMENT_ROOT'].'/function/function.php'
Upvotes: 2
Reputation: 5064
All problems here
/user/cal2.php
/function/function.php
you need to include such a way:
include('../config.php');
BUT I had this problem to, and I propose you to include files in the header of each page. Config you must inckude in the header of each page.
Read this, think it helps:
problems with global variables
Upvotes: -1