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:
- root
- /index.php
- /config.php
- /user/calculate.php
- /user/cal2.php
- /function/function.php
How to proceed and not have function.php include error for cal2.php
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.
Use absolute path to include file:
$_SERVER['DOCUMENT_ROOT'].'/function/function.php'
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
精彩评论