我正在调试Ajax调用。
我怎么知道ajax调用调用哪个特定的PHP函数?
我只能看到触发请求的请求和javascript代码,但我不知道如何处理服务器端的请求?
我正在检查所有的PHP代码,但我想知道是否有更简单的方法..
感谢
答案 0 :(得分:3)
Ajax调用不调用特定函数,它只执行脚本。查看脚本,搜索它的“main”(无论它在脚本中有什么名称),你将拥有exectued函数。
答案 1 :(得分:1)
如果您想要一个真正的调试环境并且能够在php代码中设置断点,请参阅zend调试器或xdebug。两者都可以使用pdt eclipse-plugin或其他IDE进行控制。
如果您只想查看一些小信息,您当然可以在您的php代码中添加一些echo或var_dump,然后使用firebug firefox扩展来查看对您的ajax请求的响应,其中包含回应了字符串。
答案 2 :(得分:0)
答案 3 :(得分:0)
只需使用firebug,在发送请求后,查找响应。例如function1 echo foo,function2 echo bar,如果它是空白的......那两个函数都没有被调用。
在我的结尾,我正在使用Safari并且从ajax调用PHP脚本中查找请求/响应是轻而易举的。
答案 4 :(得分:0)
Debugging PHP AJAX Applications with FirePHP
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/serverside-php.png
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/firebug-output.png
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/firebug-object.png
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/firebug-trace.png
答案 5 :(得分:0)
使用Firefox的插件FireBug进行调试,您可以轻松查看请求和响应数据内容。
http://www.daniweb.com/web-development/php/code/216729
因此,正确的说,Ajax无法访问远程Web服务器内容,因此您需要在整个架构流程中间使用代理页面。
这意味着: [在同一服务器内] 使用AJAX的PHP页面 - >包含响应函数的Web服务/ Web服务器
[2台服务器内,连接远程服务器] 使用AJAX的PHP页面 - > PHP代理页面 - >包含响应函数的Web服务/ Web服务器
因此整个代理页面就像一个“中间人”连接到远程站点。
[重要] 不要混淆路由器代理和代理页面,但有相同的理论,但它是不同的东西。