It's a file path problem, as you likely understood it.
Include can be made out of URL, but it must be enabled on the server, which is rare with shared host because it opens the door wide to XSS.
I'd recommend you to forget it.
Including URL, as fast as I know, is like including
the html result of the php file, not the functions it contains.
So, if it's just a header or a link bar, it's ok, but not if you have classes, object, variables or function that you need to work with.
When you do an include, the server looks in several places. At first, the current position of the calling file in the filesystem tree is probed. If the including file is not found, then it will look in every places listed into the include_path configuration directive.
By the way, using single or double quotes don't make any differences for the PHP engine, except that in single quotes, the $something is not evaluated to a variable value, so it's a bit faster (but so neglectible that you can consider it's the same)
What your host did for you at first, was to reference your web site root directory (the $_SERVER['DOCUMENT_ROOT'] variable) as the prefix of the include path.
This will allow point to the server path of your web site root folder, making it easy to include the same file all the time, regardless of your position into your site arborescence.
What can cause your error now can be:
1) The file realy isn't there
2) The file is there, but the filename is not spelled correctly
3) The file is there, but the user who runs the php process (usually nobody, or apache) has no access to that specific path. A directory could be marked "not readable" for him. It happens often when you upload something via ftp (which use your specific user account) and when php try to access it (with the apache system account), the path is not allowed to be accessible by the group or the user apache.
To check if PHP as access to the file, try to adapt this PHP manual example to you:
PHP Code:
<?php
$dir = "/etc/php5/"; //customize here for the path to the folder containing your include, not the file to include
// Open a known directory, and proceed to read its contents
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";
}
closedir($dh);
}
}
?>
This will allow you to see what the php engine is able to access.