32,39c32,33 < < $url = parse_url($url); < < // Decode url-encoded information in the db connection string < $url['user'] = urldecode($url['user']); < $url['pass'] = urldecode($url['pass']); < $url['host'] = urldecode($url['host']); < $url['path'] = urldecode($url['path']); --- > > _db_connect($url); 236,243c230 < array_shift($args); < < $query = db_prefix_tables($query); < if (isset($args[0]) and is_array($args[0])) { // 'All arguments in one array' syntax < $args = $args[0]; < } < _db_query_callback($args, TRUE); < $query = preg_replace_callback(DB_QUERY_REGEXP, '_db_query_callback', $query); --- > _db_query_prepare($query, $args); 284,291c271,272 < array_shift($args); < < $query = preg_replace('/^SELECT/i', 'CREATE TEMPORARY TABLE '. $tablename .' AS SELECT', db_prefix_tables($query)); < if (isset($args[0]) and is_array($args[0])) { // 'All arguments in one array' syntax < $args = $args[0]; < } < _db_query_callback($args, TRUE); < $query = preg_replace_callback(DB_QUERY_REGEXP, '_db_query_callback', $query); --- > $query = preg_replace('/^SELECT/i', 'CREATE TEMPORARY TABLE '. db_escape_table($tablename) .' AS SELECT', db_prefix_tables($query)); > _db_query_prepare($query, $args); 342c323 < db_query('COMMIT'); --- > _db_query('COMMIT');