【问题标题】:phpMyadmin error "continue" targeting switch is equivalent to "break"phpMyadmin 错误“继续”定位开关相当于“中断”
【发布时间】:2019-05-11 16:28:04
【问题描述】:

在我安装了最新版本的 PHP 7.3.4MySQL Community Server 8.0.15 后,我的 phpmyadmin 4.7.7 遇到了这个错误强>:

.\libraries\config\FormDisplay.php#661 “继续”定位中的警告 switch 相当于“break”。您的意思是使用“继续 2”吗?

回溯

.\vendor\composer\ClassLoader.php#444: include() .\vendor\composer\ClassLoader.php#322: 作曲家\自动加载\包含文件(字符串 'F:\apps\phpMyAdmin\vendor\composer/../../\libraries\config\FormDisplay.php') Composer\Autoload\ClassLoader->loadClass(string 'PMA\libraries\config\FormDisplay') .\libraries\config\PageSettings.php#76: spl_autoload_call(string 'PMA\libraries\config\FormDisplay') .\libraries\config\PageSettings.php#230: PMA\libraries\config\PageSettings->__construct(string 'Navi_panel', 字符串 'pma_navigation_settings', ) .\libraries\navigation\Navigation.php#66: PMA\libraries\config\PageSettings::getNaviSettings() .\libraries\Header.php#425: PMA\libraries\navigation\Navigation->getDisplay() .\libraries\Response.php#260: PMA\libraries\Header->getDisplay() .\libraries\Response.php#273: PMA\libraries\Response->_getDisplay() .\libraries\Response.php#432: PMA\libraries\Response->_htmlResponse() PMA\libraries\Response->response()

有人知道如何解决这个问题吗?

【问题讨论】:

  • 这可能是 PHP 中非向后兼容更改的问题。我建议您更新到最新版本的 PHPMyAdmin。

标签: php mysql phpmyadmin


【解决方案1】:

在文件FormDisplay.php中编辑PHP脚本 在这一行 660,我在这个路径中找到了这段代码

$ /usr/share/phpmyadmin/libraries/config/FormDisplay.php

case 'select':
     $successfully_validated = $this->_validateSelect(
     $_POST[$key],
     $form->getOptionValueList($system_path)
     );
     if (! $successfully_validated) {
         $this->_errors[$work_path][] = __('Incorrect value!');
         $result = false;
         continue;
    }
    break;

按照以下建议更新它

case 'select':
     $successfully_validated = $this->_validateSelect(
     $_POST[$key],
     $form->getOptionValueList($system_path)
     );
     if (! $successfully_validated) {
         $this->_errors[$work_path][] = __('Incorrect value!');
         $result = false;
         break;
    }
    break;

重新加载 PHPMyAdmin,您的问题将得到解决。

【讨论】:

    【解决方案2】:

    我有同样的问题,并通过编辑 php 脚本 FormDisplay.php 来修复它。

    在第 661 行,将 continue 替换为 break(保留分号)。

    如果您进行编辑,则需要 sudo 访问权限,但请先备份原始权限。

    重新加载页面。希望对您有所帮助。

    【讨论】:

    • 这可行,但是 -1 因为更新到新版本是更好的解决方案
    • 在 10.3.22-MariaDB 和 PHP 版本中仍然相关:在 Raspbian Buster 4.19.97 上运行的 7.3.14
    【解决方案3】:

    PHP 向后兼容会发生此错误。

    更新到最新版本,对我来说是 4.8.5 解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-08
      • 2020-05-27
      • 2019-12-18
      • 1970-01-01
      • 2010-11-04
      • 2016-08-23
      相关资源
      最近更新 更多