2010-10-07 29 views
1

我使用NetBeans和Xdebug處理PHP代碼。我使用Xdebug進行逐步調試等。調試PHP - 選擇Xdebug會話的請求

我可以調試默認請求的流,但不能調用由特定_get/_post或Ajax請求生成的流。

有人有一個想法,如何做到這一點? http://localhost/?XDEBUG_SESSION_START=netbeans-xdebug

感謝:

當我運行調試,在我的瀏覽器選項卡具有以下URL自動打開。 吉迪

+0

您是否嘗試修改ajax請求URL以擁有'XDEBUG_SESSION_START'參數? – mhitza 2010-10-08 01:35:05

回答

1

好吧,

它會是這樣的:

在項目選項卡(在我的配置頂級屏幕左側),右鍵單擊該項目的名稱,然後屬性=>運行配置

在那裏,你必須填寫3種形式:1。 項目網址 - 基於Web項目的基本URL,通常http://localhost 2索引文件 - 使用瀏覽按鈕,進入指數的本地副本。 PHP或任何文件爲你服務這個角色。此表格應包含本地文件系統中此文件的路徑,而不包含在網頁上 3.參數 - 您希望通過URL路徑到您的腳本的任何參數

這應該使您能夠選擇自定義URL用於調試

一個可能的問題:在這個過程中,您可能會失去網絡地址和系統中相應文件之間的同步。谷歌「在PHP調試器中的路徑映射」,如果你遇到這種性質的問題,並採取第一個結果(系統不允許我直接鏈接)。 但是這並不適合我。我使用的服務器的配置通過重定向URL來解決這個問題

吉迪

附: 以上所有內容都沒有解釋如何在調試時將POST變量傳遞給腳本(並且我確實不知道該怎麼做)

+0

這不能解決問題,不應該被標記爲接受 – spacebiker 2014-05-17 00:18:08

-1

也許您嘗試按上述方法啓動調試會話。作爲調試目標,您可以在工作流中選擇最接近您的POST請求的頁面。然後,您與Web服務進行交互,始終讓NetBeans中的調試器運行。通過調試會話的交互,您可以填寫表單等併發送POST請求。然後切換到netbeans並像往常一樣進行調試。

也許你必須在調試選項中啓用'Break at first line',或者在調用請求的php代碼中設置一個斷點,以確保調試器在調度POST請求時暫停。那麼你最終將不得不在每一次頁面加載時給調試器一個推動力。

希望它有幫助

+0

糟糕,只是意識到我是一名屍體褻瀆者。 SRY – guest 2013-04-17 09:52:26