使用netbeans 6.9调试ajax/xmlhttprequest和php

使用netbeans 6.9调试ajax/xmlhttprequest和php,php,javascript,ajax,netbeans,Php,Javascript,Ajax,Netbeans,我正在使用netbeans 6.9,并使用xdebug逐步浏览我的php文件,这非常棒。然而,我一直在我的项目中使用ajax/xmlhttprequest,我很难调试它。我做了一些研究,偶然发现了firebug/FireHP,并通读了一点。我并不反对学习新的工具,但如果它可以集成到我目前使用的ide中,它将更加高效 因此,为了提供更多示例,假设在我的index.php上有以下内容: <button onclick="getTweet()">Get Tweets!</button

我正在使用netbeans 6.9,并使用xdebug逐步浏览我的php文件,这非常棒。然而,我一直在我的项目中使用ajax/xmlhttprequest,我很难调试它。我做了一些研究,偶然发现了firebug/FireHP,并通读了一点。我并不反对学习新的工具,但如果它可以集成到我目前使用的ide中,它将更加高效

因此,为了提供更多示例,假设在我的index.php上有以下内容:

<button onclick="getTweet()">Get Tweets!</button>
getTweet.php退出并执行twitter搜索:

$search = "http://search.twitter.com/search.atom?q=" . $q . "";
$tw = curl_init();
curl_setopt($tw, CURLOPT_URL, $search);
curl_setopt($tw, CURLOPT_RETURNTRANSFER, TRUE);
$twi = curl_exec($tw);
$search_res = new SimpleXMLElement($twi);
现在,我对web开发、php、js、ajax、html、xml、json、netbeans都是新手。我在过去的3.5个月里学习了所有这些,所以我是新手,需要明确的指导

在getTweet.php中,我可以在netbeans中插入断点,但是……当我单击html按钮从生成xmlhttprequest的.js文件触发getTweet()时,netbeans中的调试器不会触发。能够看到变量及其输出(XML、JSON等)极大地帮助了我学习这方面的知识,因此我希望能够在getTweet.php中看到变量,如$twi、$search_res等

谢谢你的建议


PS:firebug会为我想要实现的目标工作吗?我学习很慢,不想一下子堆太多东西。谢谢

Xdebug只捕获服务器端事件,这意味着您无法使用它单步执行客户端脚本。然而,Netbeans确实能够单步执行Javascript(我自己还没有尝试过,因为我使用Firebug来单步执行脚本)


在Netbeans项目中设置脚本调试时。

为了在getTweet.php中触发调试器,需要通过发送xdebug\u SESSION\u START参数向xdebug指示调试器正在侦听。更新getTweet()中的代码,使其具有以下内容:

xmlhttp.open("GET", "getTweet.php?XDEBUG_SESSION_START=netbeans-xdebug&q="+$phpVars,true);

netbeans上的javascript调试已被禁用,6.9是我使用的最新版本,根据本论坛帖子:
xmlhttp.open("GET", "getTweet.php?XDEBUG_SESSION_START=netbeans-xdebug&q="+$phpVars,true);