2011-06-08 88 views
0

AJAX調用後,這種情況發生的調試PHP錯誤我有一個混亂的局面:)由通用JS功能

一點點我有一個JavaScript函數,它是由幾個不同的頁面調用。這個JavaScript頁面然後調用一些服務器端PHP代碼。大約98%的時間,沒有問題。

但有時候JavaScript不會傳遞它應該是的id參數,並且會產生錯誤。

我的問題是,我不能追查的頁面,使調用JS函數,然後生成錯誤的PHP調用。

任何想法如何我可以跟蹤此?

回答

2

當您的PHP腳本完成其工作時,將HTTP_REFERRER發送到錯誤日誌。添加日期&時間和$_GET變量以獲取更多信息。這個信息應該已經存在於你的Web服務器訪問日誌中,但是如果你也需要$_POST變量,你需要在錯誤日誌中創建一條自定義消息。

// Simple: 
error_log("AJAX call from {$_SERVER['HTTP_REFERRER']}", 0); 

// Fancy: 
error_log(strftime("Y-m-d H:M:S") . " AJAX call from {$_SERVER['HTTP_REFERRER']}; POST: var1={$_POST['var1']} var2={$_POST['var2']}", 0); 
+0

Niceeeee - 我會做到這一點! - 謝謝! – Genadinik 2011-06-08 20:57:40

1

您可以在PHP端使用$_SERVER['HTTP_REFERER']來嘗試確定請求來自哪裏。

0

觀看Firebug中的Net標籤。這跟蹤所有的HTTP請求,包括AJAX調用。如果你傳遞參數,你也可以看到。點擊Firebug中請求旁邊的小小的+按鈕,在包含傳遞參數的標籤窗格中查看詳細信息,如果通過,則甚至可以使用JSON對象。