if ($connection->connect($credentials[0], $credentials[1], $credentials[2])) {
$connection->set_charset(charset($connection)); // available in MySQLi since PHP 5.0.5
$connection->query("SET sql_quote_show_create = 1, autocommit = 1");
- if (version_compare($connection->server_info, '5.7.8') >= 0) {
+ if (min_version('5.7.8', 10.2, $connection) >= 0) {
$structured_types[lang('Strings')][] = "json";
$types["json"] = 4294967295;
}
$connection = new Min_DB;
$credentials = $adminer->credentials();
if ($connection->connect($credentials[0], $credentials[1], $credentials[2])) {
- if ($connection->server_info >= 9) {
+ if (min_version(9, 0, $connection)) {
$connection->query("SET application_name = 'Adminer'");
- if ($connection->server_info >= 9.2) {
+ if (min_version(9.2, 0, $connection)) {
$structured_types[lang('Strings')][] = "json";
$types["json"] = 4294967295;
- if ($connection->server_info >= 9.4) {
+ if (min_version(9.4, 0, $connection)) {
$structured_types[lang('Strings')][] = "jsonb";
$types["jsonb"] = 4294967295;
}
/** Check if connection has at least the given version
* @param string required version
* @param string required MariaDB version
+* @param Min_DB defaults to $connection
* @return bool
*/
-function min_version($version, $maria_db = "") {
+function min_version($version, $maria_db = "", $connection2 = null) {
global $connection;
- $server_info = $connection->server_info;
+ if (!$connection2) {
+ $connection2 = $connection;
+ }
+ $server_info = $connection2->server_info;
if ($maria_db && preg_match('~([\d.]+)-MariaDB~', $server_info, $match)) {
$server_info = $match[1];
$version = $maria_db;
Adminer 4.5.1-dev:
Fix counting selected rows after going back to select page
PHP <5.3 compatibility even with Elasticsearch enabled
+MariaDB: Support JSON since MariaDB 10.2
Malay translation
Adminer 4.5.0 (released 2018-01-24):