2014-05-06 69 views
1

我對所有PHP包含程序都使用相對路徑,本地工作正常。我只是將所有文件都傳送到服務器,而且我收到的錯誤指向了目錄中的文件。例如:將本地站點傳輸到服務器時出現相對路徑故障

include_once('../db.php'); 

是給我:

Warning: include_once(../db.php) [function.include-once]: 
failed to open stream: No such file or directory in /nfs/c06/h04/mnt/188388/domains/website.com/html/includes/user_process.php on line 3 

我不能完全肯定發生了什麼事。任何幫助將非常感激。

+0

請告訴,你怎麼樣文件位於相對於彼此(user_process.php和db.php中)。 –

回答

3

赤是否有幫助

include_once(dirname(dirname(__FILE__)). '/db.php'); 

include_once(dirname(__DIR__). '/db.php'); 
+0

出於好奇,這對你有效嗎?\ –

+0

都爲我工作 – user3470953

0

如果文件是存在的,訪問是正確的,它必須工作

你可以試試這個對於每個include_once文件應用的路徑我們可以簡單地做到這一點

include_once($_SERVER["DOCUMENT_ROOT"] . "path/file") 

<?php 
if([email protected]_exists('./somthing')) { 
    echo 'can not include'; 
} else { 
    include('./something'); 
} 
?> 
+0

第二種解決方案不能解決他的問題。這隻會激怒它。在這種情況下,他只會隱藏錯誤信息並顯示他自己的信息。它不會爲他找到該文件。另外,!@file_exists可能就是!file_exists,因爲file_exists不會返回任何錯誤,只是true或false。 –