【问题标题】:Phpmyadmin export issue: count(): Parameter must be an array or an object that implements CountablePhpmyadmin 导出问题:count():参数必须是数组或实现 Countable 的对象
【发布时间】:2018-09-13 06:29:23
【问题描述】:

我在导出任何数据库时遇到了 PhpMyAdmin 的问题。每次都来。

如果有人有解决 PhpMyAdmin 中所有这些类型问题的解决方案,请帮助我

【问题讨论】:

标签: mysql phpmyadmin php-7.2


【解决方案1】:

似乎我们无法从 PHP 7.2+ 的 PhpMyAdmin 中删除所有问题。但是我们可以通过在文件 libraries/plugin_interface.lib.php 文件中的第 532 行更改一行来解决此问题。

以下是修复的屏幕截图。

修复前的代码如下:-

修复后的代码如下:-

以上是解决导出数据库屏幕中错误消息的唯一修复。

【讨论】:

  • 这是正确答案。但是我的错误是在第 551 行,而不是在第 532 行
【解决方案2】:

是的,如果您使用的是 phpMyAdmin 版本 4.6.6deb4,您将收到此错误。

在我的 /usr/share/libraries/phpmyadmin/sql.lib.php 文件中,特别是在第 613 行,if 语句似乎有错误。改变

|| (count($analyzed_sql_results['select_expr'] == 1)

到这里

|| ((count($analyzed_sql_results['select_expr']) == 1)

第一行代码尝试计算布尔表达式的结果,输出不可数的值('false' 或 'true')。

更改后,错误消失了。

【讨论】:

  • 文件路径应该是/usr/share/phpmyadmin/libraries/sql.lib.php而不是/usr/share/libraries/phpmyadmin/sql.lib.php
  • 另外,这适用于不同的错误。 OP 错误涉及plugin_interface.lib.php。此修复将针对 sql.lib.php 中的错误(没有详细信息)
  • 另外,你必须在下一行删除一个右括号.. && ($analyzed_sql_results['select_expr'][0] == '*'))
【解决方案3】:

在 PHP 7.2.10 上对其进行测试后,您需要像这样更改该行:

if ($options != null && count(array($options)) > 0) {

【讨论】:

    【解决方案4】:

    Ubuntu 18.04 LTS

    这些是对我有用的步骤。非常感谢 William Desportes 在他们的 Ubuntu PPA 上提供自动更新。

    第 1 步(来自 William Desportes 帖子)

    sudo add-apt-repository ppa:phpmyadmin/ppa

    第 2 步

    sudo apt-get --with-new-pkgs upgrade

    第 3 步

    sudo service mysql restart

    如果重启mysql有问题,也可以按照以下顺序重启

    sudo service mysql stop

    sudo service mysql start

    【讨论】:

      【解决方案5】:

      使用 Louis Charette 在对 marvatron 答案的评论中推荐的路径 /usr/share/phpmyadmin/libraries/sql.lib.php 可以解决我的问题。

      (确认评论并将其转化为正确答案。)

      【讨论】:

      • @LouisCharette 请注意,以防您想索取某些东西。
      • 您好 user3673734。将评论转换为正确答案通常会受到赞赏。特别是如果您有理由评论作者不会(我在几个月后确认......)。但是,最好还是通知评论作者。并且请更加详细和明确地说明您在做什么。这个特定的帖子有可能被误认为是“谢谢”。不回答。玩得开心。
      【解决方案6】:
      sudo sed -i "s/|\s*\((count(\$analyzed_sql_results\['select_expr'\]\)/| (\1)/g" /usr/share/phpmyadmin/libraries/sql.lib.php```
      

      【讨论】:

      • 虽然这段代码 sn-p 可以解决问题,但它没有解释为什么或如何回答这个问题。请include an explanation for your code,因为这确实有助于提高您的帖子质量。
      猜你喜欢
      • 2018-06-08
      • 2019-05-10
      • 2018-12-09
      • 2021-05-30
      • 2018-06-28
      • 2018-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多