diff --git a/libraries/import/ldi.php b/libraries/import/ldi.php index ce3a5e0594..a339b2c654 100644 --- a/libraries/import/ldi.php +++ b/libraries/import/ldi.php @@ -33,21 +33,66 @@ if (isset($plugin_list)) { } $plugin_list['ldi'] = array( 'text' => __('CSV using LOAD DATA'), - 'extension' => 'ldi', // This is nonsense, however we want to default to our parser for csv + // Following is nonsense, however we want to default to our parser for csv + 'extension' => 'ldi', 'options' => array( - array('type' => 'begin_group', 'name' => 'general_opts'), - array('type' => 'bool', 'name' => 'replace', 'text' => __('Replace table data with file')), - array('type' => 'bool', 'name' => 'ignore', 'text' => __('Do not abort on INSERT error')), - array('type' => 'text', 'name' => 'terminated', 'text' => __('Columns terminated by'), 'size' => 2, 'len' => 2), - array('type' => 'text', 'name' => 'enclosed', 'text' => __('Columns enclosed by'), 'size' => 2, 'len' => 2), - array('type' => 'text', 'name' => 'escaped', 'text' => __('Columns escaped by'), 'size' => 2, 'len' => 2), - array('type' => 'text', 'name' => 'new_line', 'text' => __('Lines terminated by'), 'size' => 2), - array('type' => 'text', 'name' => 'columns', 'text' => __('Column names')), - array('type' => 'bool', 'name' => 'local_option', 'text' => __('Use LOCAL keyword')), - array('type' => 'end_group') + array( + 'type' => 'begin_group', + 'name' => 'general_opts' ), + array( + 'type' => 'bool', + 'name' => 'replace', + 'text' => __('Replace table data with file') + ), + array( + 'type' => 'bool', + 'name' => 'ignore', + 'text' => __('Do not abort on INSERT error') + ), + array( + 'type' => 'text', + 'name' => 'terminated', + 'text' => __('Columns terminated by'), + 'size' => 2, + 'len' => 2 + ), + array( + 'type' => 'text', + 'name' => 'enclosed', + 'text' => __('Columns enclosed by'), + 'size' => 2, + 'len' => 2 + ), + array( + 'type' => 'text', + 'name' => 'escaped', + 'text' => __('Columns escaped by'), + 'size' => 2, + 'len' => 2 + ), + array( + 'type' => 'text', + 'name' => 'new_line', + 'text' => __('Lines terminated by'), + 'size' => 2 + ), + array( + 'type' => 'text', + 'name' => 'columns', + 'text' => __('Column names') + ), + array( + 'type' => 'bool', + 'name' => 'local_option', + 'text' => __('Use LOCAL keyword') + ), + array( + 'type' => 'end_group' + ) + ), 'options_text' => __('Options'), - ); + ); /* We do not define function when plugin is just queried for information above */ return; } diff --git a/libraries/import/ods.php b/libraries/import/ods.php index dc7765a7fd..5407c127b4 100644 --- a/libraries/import/ods.php +++ b/libraries/import/ods.php @@ -29,13 +29,32 @@ if (isset($plugin_list)) { 'text' => __('Open Document Spreadsheet'), 'extension' => 'ods', 'options' => array( - array('type' => 'begin_group', 'name' => 'general_opts'), - array('type' => 'bool', 'name' => 'col_names', 'text' => __('The first line of the file contains the table column names (if this is unchecked, the first line will become part of the data)')), - array('type' => 'bool', 'name' => 'empty_rows', 'text' => __('Do not import empty rows')), - array('type' => 'bool', 'name' => 'recognize_percentages', 'text' => __('Import percentages as proper decimals (ex. 12.00% to .12)')), - array('type' => 'bool', 'name' => 'recognize_currency', 'text' => __('Import currencies (ex. $5.00 to 5.00)')), - array('type' => 'end_group') + array( + 'type' => 'begin_group', + 'name' => 'general_opts' ), + array( + 'type' => 'bool', + 'name' => 'col_names', + 'text' => __('The first line of the file contains the table column names (if this is unchecked, the first line will become part of the data)') + ), + array( + 'type' => 'bool', + 'name' => 'empty_rows', + 'text' => __('Do not import empty rows') + ), + array( + 'type' => 'bool', + 'name' => 'recognize_percentages', + 'text' => __('Import percentages as proper decimals (ex. 12.00% to .12)') + ), + array( + 'type' => 'bool', + 'name' => 'recognize_currency', + 'text' => __('Import currencies (ex. $5.00 to 5.00)') + ), + array('type' => 'end_group') + ), 'options_text' => __('Options'), ); /* We do not define function when plugin is just queried for information above */ @@ -122,9 +141,13 @@ foreach ($sheets as $sheet) { $num_iterations = $num_repeat ? $num_repeat : 1; for ($k = 0; $k < $num_iterations; $k++) { - if ($_REQUEST['ods_recognize_percentages'] && !strcmp('percentage', $cell_attrs['value-type'])) { + if ($_REQUEST['ods_recognize_percentages'] + && ! strcmp('percentage', $cell_attrs['value-type']) + ) { $value = (double)$cell_attrs['value']; - } elseif ($_REQUEST['ods_recognize_currency'] && !strcmp('currency', $cell_attrs['value-type'])) { + } elseif ($_REQUEST['ods_recognize_currency'] + && !strcmp('currency', $cell_attrs['value-type']) + ) { $value = (double)$cell_attrs['value']; } else { /* We need to concatenate all paragraphs */ diff --git a/libraries/import/sql.php b/libraries/import/sql.php index 4e97db7004..4dda0467d1 100644 --- a/libraries/import/sql.php +++ b/libraries/import/sql.php @@ -74,7 +74,9 @@ if (isset($_POST['sql_delimiter'])) { // Handle compatibility options $sql_modes = array(); -if (isset($_REQUEST['sql_compatibility']) && 'NONE' != $_REQUEST['sql_compatibility']) { +if (isset($_REQUEST['sql_compatibility']) + && 'NONE' != $_REQUEST['sql_compatibility'] +) { $sql_modes[] = $_REQUEST['sql_compatibility']; } if (isset($_REQUEST['sql_no_auto_value_on_zero'])) { @@ -92,7 +94,7 @@ unset($sql_modes); */ $GLOBALS['finished'] = false; -while (!($GLOBALS['finished'] && $i >= $len) && !$error && !$timeout_passed) { +while (! ($GLOBALS['finished'] && $i >= $len) && ! $error && ! $timeout_passed) { $data = PMA_importGetNextChunk(); if ($data === false) { // subtract data we didn't handle yet and stop processing @@ -106,7 +108,9 @@ while (!($GLOBALS['finished'] && $i >= $len) && !$error && !$timeout_passed) { // free memory unset($data); // Do not parse string when we're not at the end and don't have ; inside - if ((strpos($buffer, $sql_delimiter, $i) === false) && !$GLOBALS['finished']) { + if ((strpos($buffer, $sql_delimiter, $i) === false) + && ! $GLOBALS['finished'] + ) { continue; } } @@ -120,7 +124,14 @@ while (!($GLOBALS['finished'] && $i >= $len) && !$error && !$timeout_passed) { $old_i = $i; // this is about 7 times faster that looking for each sequence i // one by one with strpos() - if (preg_match('/(\'|"|#|-- |\/\*|`|(?i)(?= $len) && !$error && !$timeout_passed) { $found_delimiter = true; } - // set $i to the position of the first quote, comment.start or delimiter found + // set $i to the position of the first quote, + // comment.start or delimiter found $i = min($first_position, $first_sql_delimiter); if ($i == $big_value) { @@ -181,9 +193,9 @@ while (!($GLOBALS['finished'] && $i >= $len) && !$error && !$timeout_passed) { */ if ($pos === false && $quote == '`' && $found_delimiter) { $pos = $first_sql_delimiter - 1; - // No quote? Too short string - } elseif ($pos === false) { - // We hit end of string => unclosed quote, but we handle it as end of query + } elseif ($pos === false) { // No quote? Too short string + // We hit end of string => unclosed quote, + // but we handle it as end of query if ($GLOBALS['finished']) { $endq = true; $i = $len - 1; @@ -269,19 +281,24 @@ while (!($GLOBALS['finished'] && $i >= $len) && !$error && !$timeout_passed) { } // Change delimiter, if redefined, and skip it (don't send to server!) if (strtoupper(substr($buffer, $i, $length_of_delimiter_keyword)) == $delimiter_keyword - && ($i + $length_of_delimiter_keyword < $len)) { + && ($i + $length_of_delimiter_keyword < $len) + ) { // look for EOL on the character immediately after 'DELIMITER ' // (see previous comment about PHP_EOL) - $new_line_pos = strpos($buffer, "\n", $i + $length_of_delimiter_keyword); - // it might happen that there is no EOL - if (false === $new_line_pos) { - $new_line_pos = $len; - } - $sql_delimiter = substr($buffer, $i + $length_of_delimiter_keyword, $new_line_pos - $i - $length_of_delimiter_keyword); - $i = $new_line_pos + 1; - // Next query part will start here - $start_pos = $i; - continue; + $new_line_pos = strpos($buffer, "\n", $i + $length_of_delimiter_keyword); + // it might happen that there is no EOL + if (false === $new_line_pos) { + $new_line_pos = $len; + } + $sql_delimiter = substr( + $buffer, + $i + $length_of_delimiter_keyword, + $new_line_pos - $i - $length_of_delimiter_keyword + ); + $i = $new_line_pos + 1; + // Next query part will start here + $start_pos = $i; + continue; } // End of SQL @@ -299,7 +316,10 @@ while (!($GLOBALS['finished'] && $i >= $len) && !$error && !$timeout_passed) { // Do not try to execute empty SQL if (! preg_match('/^([\s]*;)*$/', trim($tmp_sql))) { $sql = $tmp_sql; - PMA_importRunQuery($sql, substr($buffer, 0, $i + strlen($sql_delimiter))); + PMA_importRunQuery( + $sql, + substr($buffer, 0, $i + strlen($sql_delimiter)) + ); $buffer = substr($buffer, $i + strlen($sql_delimiter)); // Reset parser: $len = strlen($buffer); @@ -308,7 +328,9 @@ while (!($GLOBALS['finished'] && $i >= $len) && !$error && !$timeout_passed) { $start_pos = 0; // Any chance we will get a complete query? //if ((strpos($buffer, ';') === false) && !$GLOBALS['finished']) { - if ((strpos($buffer, $sql_delimiter) === false) && !$GLOBALS['finished']) { + if (strpos($buffer, $sql_delimiter) === false + && ! $GLOBALS['finished'] + ) { break; } } else { diff --git a/libraries/import/xml.php b/libraries/import/xml.php index f343b93e40..a1b1a337ee 100644 --- a/libraries/import/xml.php +++ b/libraries/import/xml.php @@ -155,7 +155,8 @@ if (isset($namespaces['pma'])) { foreach ($struct as $tier1 => $val1) { foreach ($val1 as $tier2 => $val2) { - /* Need to select the correct database for the creation of tables, views, triggers, etc. */ + // Need to select the correct database for the creation of tables, + // views, triggers, etc. /** * @todo Generating a USE here blocks importing of a table * into another database.