As someone on the php learning curve, I have found the best way to reference include paths is by absolute location, not relative, by using the built-in $_SERVER superglobal. In my own files I have been using this with success:
include $_SERVER [ 'DOCUMENT_ROOT' ] . '/path_from_root/file_name.php';
This way it doesn't matter where the included file resides relative to my calling file, and I don't have to worry about manually typing in my fully qualified server path. (Maybe obvious..) This will work no matter how nested the include call is, and if / when I move the calling file to a different directory, for example.
You can use this method with include, require, and any other file-related functions that need a path.
On a related note..
$_SERVER [ 'PHP_SELF' ]
will return the path (relative to the root) of the current file. I also use this quite a bit.
$_SERVER has other useful info you may want to check out here:
http://php.net/manual/en/reserved.variables.server.php
Sorry if this is an older thread, I'm new here.
EDIT: You could save this 'DOCUMENT_ROOT' to a variable for use later, but from recent experience I would recommend against it because then you have to worry about variable scope. The include line as written will work every time regardless of current scope.