【问题标题】:phpMyAdmin Error in processing request Error code: 500 Error text: Internal Server Error [duplicate]phpMyAdmin 处理请求时出错错误代码:500 错误文本:内部服务器错误 [重复]
【发布时间】:2019-01-06 07:21:06
【问题描述】:

当我运行 phpMyAdmin 并单击导出/导入时,我总是收到错误:

处理请求时出错错误代码:500 错误文本:内部服务器错误。 操作系统 - Ubuntu 18.04

【问题讨论】:

  • 要查看 实际 错误消息,请检查您的服务器错误日志。您还可以更改 PHP 显示错误的方式,并告诉它直接在屏幕上显示所有错误(虽然这不是您在生产中想要的,因为它可以显示敏感数据,但在开发过程中,您应该这样做)。以下是显示所有错误和警告的方法:stackoverflow.com/questions/5438060/…

标签: php mysql ubuntu phpmyadmin


【解决方案1】:

编辑文件/usr/share/phpmyadmin/libraries/sql.lib.php:

sudo nano /usr/share/phpmyadmin/libraries/sql.lib.php

替换:

function PMA_isRememberSortingOrder($analyzed_sql_results)
{
    ......
}

与:

function PMA_isRememberSortingOrder($analyzed_sql_results)
{
return $GLOBALS['cfg']['RememberSorting']
    && ! ($analyzed_sql_results['is_count']
        || $analyzed_sql_results['is_export']
        || $analyzed_sql_results['is_func']
        || $analyzed_sql_results['is_analyse'])
    && $analyzed_sql_results['select_from']
    && ((empty($analyzed_sql_results['select_expr']))
        || ((count($analyzed_sql_results['select_expr']) == 1
            && ($analyzed_sql_results['select_expr'][0] == '*')))
        && count($analyzed_sql_results['select_tables']) == 1);
}

重启服务器apache:

sudo service apache2 restart

这应该可行。

【讨论】:

    【解决方案2】:

    我遇到了问题。我的 php 版本是 7.2。实际上这个错误来自一个 phpmyadmin 库。库名称是 /usr/share/phpmyadmin/libraries/sql.lib.php。在这个文件中没有 614 行。所以需要修改文件

    来自 && ($analyzed_sql_results['select_expr'][0] == '*')))

    && ($analyzed_sql_results['select_expr'][0] == '*'))

    或者您可以替换下面的完整方法:

    /**
    * Function to check whether to remember the sorting order or not
    *
    * @param array $analyzed_sql_results the analyzed query and other variables set
    *                                    after analyzing the query
    *
    * @return boolean
    */
    function PMA_isRememberSortingOrder($analyzed_sql_results)
    {
    return $GLOBALS['cfg']['RememberSorting']
        && ! ($analyzed_sql_results['is_count']
            || $analyzed_sql_results['is_export']
            || $analyzed_sql_results['is_func']
            || $analyzed_sql_results['is_analyse'])
        && $analyzed_sql_results['select_from']
        && ((empty($analyzed_sql_results['select_expr']))
            || (count($analyzed_sql_results['select_expr']) == 1)
                && ($analyzed_sql_results['select_expr'][0] == '*'))
        && count($analyzed_sql_results['select_tables']) == 1;
    }
    

    我希望这可能会有所帮助。谢谢。

    【讨论】:

    • 感谢对我有用。当这之前运行正常时。不知道这些天 phpmyadmin 发生了什么错误。
    • 我已将 phpmyadmin 安装到 /home/mydomain/phpmyadmin 路径中,但我找不到 sql.lib.php 文件,您能告诉我如何找到它吗?谢谢
    • 在phpmyadmin里面找到文件夹libraries。然后尝试找到 sql.lib.php。它就像 phpmyadmin/libraries/sql.lib.php
    猜你喜欢
    • 2017-07-28
    • 2016-04-18
    • 1970-01-01
    • 1970-01-01
    • 2016-12-30
    • 2019-03-17
    • 2021-02-08
    • 2017-12-03
    • 1970-01-01
    相关资源
    最近更新 更多