【问题标题】:Does FirePhp work well with FireBug 1.12.0?FirePhp 是否适用于 FireBug 1.12.0?
【发布时间】:2013-08-26 08:12:50
【问题描述】:

我昨天在我的项目中使用了firephp。

我将 Firefox 升级到 23.0.1 版本后,FireBug 扩展自动升级到 1.12.0 版本,我发现 firephp 在控制台中没有显示详细数据。

它仍然显示简要数据。我无法展开它以查看细节。

我猜firebug改变了数据结构,firephp需要升级了。

【问题讨论】:

  • 我对 FireFox 23.0.1、FirePHP 0.7.4 和 FireBug 1.12.0 没有任何问题。你有相同版本的 FirePHP 吗?
  • 什么是 FirePHP 0.7.4?我看到的最新版本here 是 0.7.2。是的,我遇到了同样的问题:我再也看不到数据库查询本身,例如,只能看到它们的摘要行。
  • ... 当Chrome errors 选项打开时,点击这一行会给我node is null 消息。
  • 对于我在 Firefox 23.0.1 (firebug 1.12.0 + firephp 0.7.2) 中的日志记录不起作用。 Google Chrome 扩展中的 Firebug 服务器 API 的替代日志记录工作正常。

标签: php firebug firephp


【解决方案1】:

Firefox 23.0.1 + Firebug 1.12.0 + FirePHP 0.7.2 - 设置相同的版本和相同的问题...我检查了FirePHP forum 并且有a topic about this issue。插件作者在那里写了

9月初放假回来后看看。感谢您报告此问题。

所以我希望在几周内问题会得到解决。 :)

【讨论】:

【解决方案2】:

如果你是不耐烦的类型,你可以自己做一个快速修复。

  • 使用您喜欢的存档/zip 管理器打开 FireBug xpi 文件。对于 linux 用户,您应该在此处找到该文件:

    ~/.mozilla/firefox/[unique-id].default/extensions/firebug@software.joehewitt.com.xpi

  • 在存档/zip 管理器中导航到 /content/firebug/console/ 并打开 consolePanel.js

  • 转到第 911 行(这可能会因次要版本而略有不同)。它应该是这样的:

    this.filterMatchSet.push(group);
    
  • 在该行之前添加:

    if (typeof this.filterMatchSet == 'undefined')
    {
        this.filterMatchSet = [];
    }
    
  • 将更改保存到存档并重新启动 FireFox

【讨论】:

  • 非常感谢,这完美解决了问题!使用 Iceweasel (25.0a2) 、Firebug 1.12 和 Firephp 9.7.2
  • @Kammy,您能否列出您在 FireBug 的控制台选项卡中获得的任何调试信息。也许您有其他我们可以解决的问题。
  • @Tom 我在 Windows 上,拥有 FF 23.0.1、Firebug 1.12.0 和 Firephp 0.7.2。我做了你提到的更改并制作了 zip 并将其重命名为 xpi。它在重新启动FF后正确安装。但它仍然像以前一样在控制台中以蓝色非消耗性文本显示“Zend_Db_Profiler_Firebug (18 @ 0.27579 sec)”。
  • @Kammy,如果没有错误消息,那么很遗憾,远程调试非常困难。在我的情况下,我收到以下错误消息“TypeError:this.filterMatchSet is undefined”,这使我能够追踪问题。尝试在 FireBug 中展开 GET [URL] 块,然后单击 Headers 选项卡。原始的 FirePHP 标头信息可能包含一些信息。
  • @Tom 现在我也在做同样的事情。我右键单击该控制台字符串,它给了我两个选项 1. 在命令行中使用 2. 在 DOM 面板中检查。所以我使用第二个选项,它向我显示了 window[19] 数组,其中包含所有 sql 查询和相关信息
【解决方案3】:

看来,firePHP 的这个问题并没有很快得到解决,并且 firebug 已经再次更新。汤姆的答案确实有效,但由于他只指定了一个行号,因此该部分在新版本的萤火虫中不起作用,因为行号与旧版本不一致所以这里是如何找到插入汤姆代码的正确位置:

在此处关注 Tom 的回答:https://stackoverflow.com/a/18530316/769294

然后,当你打开 consolePanel.js 时,你想找到这个函数:

filterLogRow: function(logRow, scrolledToBottom)
{
    if (this.matchesFilter(logRow))
    {
        // Mark the groups, in which the log row is located, also as matched
        for (var group = Dom.getAncestorByClass(logRow, "logRow-group"); group;
            group = Dom.getAncestorByClass(group.parentNode, "logRow-group"))
        {
            Css.setClass(group, "contentMatchesFilter");
            // #################################################################
            // Add This line here
            // #################################################################
            if (typeof this.filterMatchSet == 'undefined') { this.filterMatchSet = []; }
            // #################################################################
            this.filterMatchSet.push(group);
        }
    }

    .......
},

如您所见,我在您需要添加的行周围添加了一些 cmets(来自 Tom 的回答),您可以看到它需要去哪里。

希望这有助于在不久的将来对 firebug 的所有更新,直到 firePHP 得到修复。 :)

【讨论】:

    【解决方案4】:

    The problem 已在 Firebug 1.12.3 中修复。

    【讨论】:

      猜你喜欢
      • 2011-06-05
      • 2010-12-12
      • 1970-01-01
      • 1970-01-01
      • 2015-05-13
      • 2017-04-09
      • 2013-06-26
      • 2017-08-07
      • 2013-01-03
      相关资源
      最近更新 更多