diff --git a/boot.php b/boot.php index 4c3a8c5ca8..17caa19033 100644 --- a/boot.php +++ b/boot.php @@ -768,16 +768,20 @@ function run_update_function($x, $prefix) return false; } else { Config::set('database', $funcname, 'success'); - if ($post_update) { + + if ($prefix == 'update') { Config::set('system', 'build', $x); } + return true; } } else { Config::set('database', $funcname, 'success'); - if ($post_update) { + + if ($prefix == 'update') { Config::set('system', 'build', $x); } + return true; } } diff --git a/src/Database/DBA.php b/src/Database/DBA.php index 51b2c8898e..3fae84c766 100644 --- a/src/Database/DBA.php +++ b/src/Database/DBA.php @@ -8,10 +8,10 @@ namespace Friendica\Database; use Friendica\Core\System; use Friendica\Util\DateTimeFormat; +use mysqli; use PDO; use PDOException; use PDOStatement; -use mysqli; /** * @class MySQL database class @@ -50,6 +50,7 @@ class DBA self::$db_name = $db; self::$db_charset = $charset; + $port = 0; $serveraddr = trim($serveraddr); $serverdata = explode(':', $serveraddr); @@ -73,7 +74,7 @@ class DBA self::$driver = 'pdo'; $connect = "mysql:host=".$server.";dbname=".$db; - if (isset($port)) { + if ($port > 0) { $connect .= ";port=".$port; } @@ -89,9 +90,15 @@ class DBA } } - if (!self::$connected && class_exists('mysqli')) { + if (!self::$connected && class_exists('\mysqli')) { self::$driver = 'mysqli'; - self::$db = @new mysqli($server, $user, $pass, $db, $port); + + if ($port > 0) { + self::$db = @new mysqli($server, $user, $pass, $db, $port); + } else { + self::$db = @new mysqli($server, $user, $pass, $db); + } + if (!mysqli_connect_errno()) { self::$connected = true;