diff --git a/adminer/drivers/mongo.inc.php b/adminer/drivers/mongo.inc.php index 88c8e0db..57e6b7d5 100644 --- a/adminer/drivers/mongo.inc.php +++ b/adminer/drivers/mongo.inc.php @@ -31,6 +31,8 @@ if (isset($_GET["mongo"])) { return $string; } + function ping($link) { + } } class Min_Result { @@ -221,6 +223,10 @@ if (isset($_GET["mongo"])) { return $string; } + function ping($link) { + $class = 'MongoDB\Driver\Command'; + $link->executeCommand('admin', new $class(array('ping' => 1))); + } } class Min_Result { @@ -626,7 +632,7 @@ if (isset($_GET["mongo"])) { if ($password != "") { $options["password"] = ""; try { - $connection->connect("mongodb://$server", $options); + $connection->ping($connection->connect("mongodb://$server", $options)); return lang('Database does not support password.'); } catch (Exception $ex) { // this is what we want diff --git a/changes.txt b/changes.txt index d4bc5704..e02b19e5 100644 --- a/changes.txt +++ b/changes.txt @@ -17,6 +17,7 @@ PostgreSQL 10: Support partitioned tables (PR #396) PostgreSQL 11: Create PRIMARY KEY for auto increment columns SQLite: Set busy_timeout to 500 MS SQL: Don't truncate comments to 30 chars (PR #376) +MongoDB: Fix password-less check in the mongo extension (PR #405) Editor: Cast to string when searching (bug #325) Re-enable PHP warnings (regression from 4.7.8)