diff --git a/htdocs/sql/libraries/export/htmlexcel.php b/htdocs/sql/libraries/export/htmlexcel.php new file mode 100755 --- /dev/null +++ b/htdocs/sql/libraries/export/htmlexcel.php @@ -0,0 +1,195 @@ + 'strHTMLExcel', + 'extension' => 'xls', + 'mime_type' => 'application/vnd.ms-excel', + 'force_file' => true, + 'options' => array( + array('type' => 'text', 'name' => 'null', 'text' => 'strReplaceNULLBy'), + array('type' => 'bool', 'name' => 'columns', 'text' => 'strPutColNames'), + array('type' => 'hidden', 'name' => 'data'), + ), + 'options_text' => 'strOptions', + ); +} else { + +/** + * Outputs comment + * + * @param string Text of comment + * + * @return bool Whether it suceeded + */ +function PMA_exportComment($text) { + return TRUE; +} + +/** + * Outputs export footer + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportFooter() { + if (!PMA_exportOutputHandler(' + + + + +')) { + return FALSE; + } + return TRUE; +} + +/** + * Outputs export header + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportHeader() { + global $charset, $charset_of_file; + if (!PMA_exportOutputHandler(' + + + + + + + + + + + +
+ + +')) { + return FALSE; + } + + return TRUE; +} + +/** + * Outputs database header + * + * @param string Database name + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportDBHeader($db) { + return TRUE; +} + +/** + * Outputs database footer + * + * @param string Database name + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportDBFooter($db) { + return TRUE; +} + +/** + * Outputs create database database + * + * @param string Database name + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportDBCreate($db) { + return TRUE; +} + +/** + * Outputs the content of a table in CSV format + * + * @param string the database name + * @param string the table name + * @param string the end of line sequence + * @param string the url to go back in case of error + * @param string SQL query for obtaining data + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportData($db, $table, $crlf, $error_url, $sql_query) { + global $what; + + // Gets the data from the database + $result = PMA_DBI_query($sql_query, null, PMA_DBI_QUERY_UNBUFFERED); + $fields_cnt = PMA_DBI_num_fields($result); + + // If required, get fields name at the first line + if (isset($GLOBALS[$what . '_columns'])) { + $schema_insert = ''; + for ($i = 0; $i < $fields_cnt; $i++) { + $schema_insert .= ''; + } // end for + $schema_insert .= ''; + if (!PMA_exportOutputHandler($schema_insert)) { + return FALSE; + } + } // end if + + $fields_meta = PMA_DBI_get_fields_meta($result); + + // Format the data + while ($row = PMA_DBI_fetch_row($result)) { + $schema_insert = ''; + for ($j = 0; $j < $fields_cnt; $j++) { + if (!isset($row[$j]) || is_null($row[$j])) { + $value = $GLOBALS[$what . '_null']; + } elseif ($row[$j] == '0' || $row[$j] != '') { + $value = $row[$j]; + } else { + $value = ''; + } + $schema_insert .= ''; + } // end for + $schema_insert .= ''; + if (!PMA_exportOutputHandler($schema_insert)) { + return FALSE; + } + } // end while + PMA_DBI_free_result($result); + + return TRUE; +} + +} +?>
' . htmlspecialchars(stripslashes(PMA_DBI_field_name($result, $i))) . '
numeric) { + $schema_insert .= ' x:num '; + } + $schema_insert .= '>' . htmlspecialchars($value) . '