diff --git a/htdocs/sql/libraries/export/xml.php b/htdocs/sql/libraries/export/xml.php new file mode 100755 --- /dev/null +++ b/htdocs/sql/libraries/export/xml.php @@ -0,0 +1,180 @@ + 'strXML', + 'extension' => 'xml', + 'mime_type' => 'text/xml', + 'options' => array( + 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 PMA_exportOutputHandler('' . $GLOBALS['crlf']); +} + +/** + * Outputs export footer + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportFooter() { + return TRUE; +} + +/** + * Outputs export header + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportHeader() { + global $crlf; + global $cfg; + + if ($GLOBALS['output_charset_conversion']) { + $charset = $GLOBALS['charset_of_file']; + } else { + $charset = $GLOBALS['charset']; + } + + $head = '' . $crlf + . '' . $crlf . $crlf; + return PMA_exportOutputHandler($head); +} + +/** + * Outputs database header + * + * @param string Database name + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportDBHeader($db) { + global $crlf; + $head = '' . $crlf + . '<' . $db . '>' . $crlf; + return PMA_exportOutputHandler($head); +} + +/** + * Outputs database footer + * + * @param string Database name + * + * @return bool Whether it suceeded + * + * @access public + */ +function PMA_exportDBFooter($db) { + global $crlf; + return PMA_exportOutputHandler('' . $crlf); +} + +/** + * 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 + * + * @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) { + $result = PMA_DBI_query($sql_query, null, PMA_DBI_QUERY_UNBUFFERED); + + $columns_cnt = PMA_DBI_num_fields($result); + for ($i = 0; $i < $columns_cnt; $i++) { + $columns[$i] = stripslashes(PMA_DBI_field_name($result, $i)); + } + unset($i); + + $buffer = ' ' . $crlf; + if (!PMA_exportOutputHandler($buffer)) { + return FALSE; + } + + while ($record = PMA_DBI_fetch_row($result)) { + $buffer = ' <' . $table . '>' . $crlf; + for ($i = 0; $i < $columns_cnt; $i++) { + if (isset($record[$i]) && !is_null($record[$i])) { + $buffer .= ' <' . $columns[$i] . '>' . htmlspecialchars($record[$i]) + . '' . $crlf; + } + } + $buffer .= ' ' . $crlf; + + if (!PMA_exportOutputHandler($buffer)) { + return FALSE; + } + } + PMA_DBI_free_result($result); + + return TRUE; +} // end of the 'PMA_getTableXML()' function +} +} +?>