2011-03-30 120 views
6

我正在测试一个Ajax/jQuery加载的PHP模块,我想知道是否有一个简单的方法来调试,而不使用全功能的调试器。简单的Ajax/PHP调试

我非常简单的调试选项是回显一些数据并读取浏览器输出,但是由于Ajax加载模块的性质,输出是隐藏的。

虽然我可以返回调试数据,直到载入ajax的模块正在运行,但如果发生错误,我无法跟踪或“查看”程序中断。

有没有办法让“输出”也在ajax加载模块?要么 ?

回答

3

我想一个解决方案可以使用FirePHP:

  • 在PHP端,你产生一些特定的HTTP报头 - 这不会是输出自身的一部分 - 利用其PHP library
  • 而在Firefox中,您将安装FirePHP extension,它将解析这些标题,并在Firebug中显示相应的数据。
+0

这是解决这个问题的一种非常好的方式,因为它可以将JS/Ajax日志保留在PHP日志旁边。我已经将它内置到我们的应用程序中进行调试了一段时间,它确实节省了大量工作。 +1 – Treffynnon 2011-03-30 11:23:28

+0

谢谢!帮了很多! – Riccardo 2011-03-30 13:29:01

+0

PHP库链接已损坏 – Ozzy 2015-08-03 12:45:43

2

使用WebKit的控制台(Chrome/Safari)或FireBug检查发生了什么,并在两者中使用console.log()。谷歌了解一下控制台是什么以及console.log()如何在这些应用程序中进行调试。在webkit中,您也可以拥有通常只有IDE提供的断点和其他不错的东西。

+0

Michael,我已经在使用Firebug ....但是调试会话应该发生在PHP领域.... console.log()似乎被用在Javascript方面 – Riccardo 2011-03-30 12:53:10

+0

移动到FirePHP !!!!会让你知道! – Riccardo 2011-03-30 12:55:00

1

也可以检查一个浏览器无关的基础上请求和响应Fiddler调试完毕阿贾克斯可以在任何浏览器,甚至是旧版本的Internet Explorer来完成。