2011-08-25 31 views
0

我建立了我的網站從一堆php包括文件..工作就像一個模板,當我改變一個文件中的東西整個網站的變化..好吧現在什麼困擾我..當我點擊一個單選按鈕,ajax應該激活,它應該嘗試與另一個php文件通信,它應該連接到數據庫並將信息發送回原始頁面,但它不能連接到數據庫,因爲該文件包含PHP包含函數,它只會在id將include文件的內容手動添加到那裏時才起作用。但它不會工作,如果它把它像這樣jQuery的.post不會讀取PHP包括

include("includes/connect.php"); 

,如果我manualy貼connent到像這樣的文件,我將努力

$connect = mysql_connect("localhost","root",""); 
mysql_select_db("demo") or mysql_error(); 

是有辦法,使其與包括功能工作?

+0

你可以發佈JS? – afuzzyllama

回答

2

您忘記了includeclient, javascript, post無關。 您可能包含來自錯誤文件夾的文件。嘗試改變

include("includes/connect.php"); 

include(dirname(__FILE__)."/includes/connect.php"); 

,並確保包括/ connect.php存在

+0

我同意,檢查你的文件目錄,並確保文件存在 – tkt986

+0

要添加到這裏:我發現通過你目前正在訪問的主目錄中的單個處理程序文件路由所有AJAX調用更容易,然後沿着文件位置或擴展名您需要作爲參數。然後你只需要用$ _POST ['file']'包括$ _POST ['file']'作爲文件的位置或擴展名。通過這種方式,您可以確保您始終訪問正確區域中的文件 - 即文件是否存在。 – Phillip

+0

@Phillip,這就是爲什麼PHP有這樣一個悲慘的安全聲譽。 'include('/ etc/passwd')'是發生在你的服務器上的一件好事情。 –

1

我認爲你應該使用的,而不是相對路徑絕對路徑。 嘗試改變

include("includes/connect.php"); 

include(__DIR__ . "/includes/connect.php"); 

您應該添加/../../附近包括用於獲取正確的方式。 如果您使用PHP5.2而不是__DIR__,請使用dirname(__ FILE__');