刚刚安装了Xampp 7.2.4,我在xampp控制面板v3.2.2中尝试打开ADMIN for MySQL时出现以下错误。我在另一个工作站,相同的操作系统(Windows Server 2012 R2)相同版本的xampp上进行了设置,但是我得到的错误对我没有任何意义......但是?已经比较了安装和它们看起来相似。
Fatal error: Uncaught Error: Call to a member function exists() on null in C:\xampp\phpMyAdmin\libraries\classes\DatabaseInterface.php:1544 Stack trace:
#0 C:\xampp\phpMyAdmin\libraries\classes\DatabaseInterface.php(2477): PhpMyAdmin\DatabaseInterface->postConnectControl()
#1 C:\xampp\phpMyAdmin\libraries\common.inc.php(358): PhpMyAdmin\DatabaseInterface->connect(257)
#2 C:\xampp\phpMyAdmin\index.php(26): require_once('C:\\xampp\\phpMyA...')
#3 {main} thrown in C:\xampp\phpMyAdmin\libraries\classes\DatabaseInterface.php on line 1544
答案 0 :(得分:17)
在暴力破解MySQL关闭后我遇到了同样的错误。
在跟踪代码中的错误后,结果发现浏览器cookie已损坏,导致PHPMyAdmin无法获取数据库列表。
在Google Chrome中,您可以通过以下方式刷新Cookie:
答案 1 :(得分:2)
转到xampp / phpmyadmin / libraries / classes / databaseintreface 在sublime文本中打开第1535行,代码写为 ([zeroconf] == true)将其更改为([zeroconf]!= true)...
答案 2 :(得分:1)
在第1544行,更改“if($ GLOBALS ['dblist'] - > databases-> exists('phpmyadmin'))” for“if($ GLOBALS ['dblist'] - > databases-> exists('phpMyAdmin'))”。
答案 3 :(得分:0)
如果您已经创建了phpmyadmin
数据库,那么您可以安全地评论第1543至1547行,这是XAMPP的情况,并且它可以正常工作。
if ($GLOBALS['cfg']['ZeroConf'] == true) {
if (strlen($GLOBALS['db'])) {
$cfgRelation = $this->relation->getRelationsParam();
if (empty($cfgRelation['db'])) {
$this->relation->fixPmaTables($GLOBALS['db'], false);
}
}
$cfgRelation = $this->relation->getRelationsParam();
// if (empty($cfgRelation['db'])) {
// if ($GLOBALS['dblist']->databases->exists('phpmyadmin')) {
// $this->relation->fixPmaTables('phpmyadmin', false);
// }
// }
}
答案 4 :(得分:0)
这个答案增强了以前的答案:
该功能必须与此类似:
public function postConnectControl()
{
// If Zero configuration mode enabled, check PMA tables in current db.
// if ($GLOBALS['cfg']['ZeroConf'] == true) {
// if (strlen($GLOBALS['db'])) {
// $cfgRelation = $this->relation->getRelationsParam();
// if (empty($cfgRelation['db'])) {
// $this->relation->fixPmaTables($GLOBALS['db'], false);
// }
// }
// $cfgRelation = $this->relation->getRelationsParam();
// if (empty($cfgRelation['db'])) {
// if ($GLOBALS['dblist']->databases->exists('phpmyadmin')) {
// $this->relation->fixPmaTables('phpmyadmin', false);
// }
// }
// }
}
答案 5 :(得分:0)
我认为您正在使用Android Studio IDE。哪个需要PHP My Admin作为数据库。将数据库连接到应用程序后。它将使您的PHP My Admin混乱。尝试先关闭应用程序,然后重新启动XAMPP应用程序。希望对您有帮助!
答案 6 :(得分:0)
我解决了升级到Phpmyadmin 4.8.2的最新版本的问题