]> git.mxchange.org Git - friendica.git/blobdiff - src/Database/Database.php
Merge pull request #8118 from annando/spamcheck
[friendica.git] / src / Database / Database.php
index bf819e7e80ee35116f89425e28aaf111940d1820..bd295fc9e489fcb0148270bfe87bb3520ef176f3 100644 (file)
@@ -67,7 +67,7 @@ class Database
        {
                // Use environment variables for mysql if they are set beforehand
                if (!empty($server['MYSQL_HOST'])
-                   && !empty($server['MYSQL_USERNAME'] || !empty($server['MYSQL_USER']))
+                   && (!empty($server['MYSQL_USERNAME'] || !empty($server['MYSQL_USER'])))
                    && $server['MYSQL_PASSWORD'] !== false
                    && !empty($server['MYSQL_DATABASE']))
                {
@@ -1327,10 +1327,6 @@ class Database
                        return false;
                }
 
-               $table_string = DBA::buildTableString($table);
-
-               $condition_string = DBA::buildCondition($condition);
-
                if (is_bool($old_fields)) {
                        $do_insert = $old_fields;
 
@@ -1361,13 +1357,16 @@ class Database
                        return true;
                }
 
+               $table_string = DBA::buildTableString($table);
+
+               $condition_string = DBA::buildCondition($condition);
+
                $sql = "UPDATE " . $table_string . " SET "
                        . implode(" = ?, ", array_map([DBA::class, 'quoteIdentifier'], array_keys($fields))) . " = ?"
                        . $condition_string;
 
-               $params1 = array_values($fields);
-               $params2 = array_values($condition);
-               $params  = array_merge_recursive($params1, $params2);
+               // Combines the updated fields parameter values with the condition parameter values
+               $params  = array_merge(array_values($fields), $condition);
 
                return $this->e($sql, $params);
        }
@@ -1377,10 +1376,10 @@ class Database
         *
         * @brief Retrieve a single record from a table
         *
-        * @param string $table
-        * @param array  $fields
-        * @param array  $condition
-        * @param array  $params
+        * @param string|array $table
+        * @param array        $fields
+        * @param array        $condition
+        * @param array        $params
         *
         * @return bool|array
         * @throws \Exception
@@ -1412,7 +1411,7 @@ class Database
         * @throws \Exception
         * @see   self::select
         */
-       public function selectToArray(string $table, array $fields = [], array $condition = [], array $params = [])
+       public function selectToArray($table, array $fields = [], array $condition = [], array $params = [])
        {
                return $this->toArray($this->select($table, $fields, $condition, $params));
        }