Sanitize filenames (in a unified manner) before using in Content-Disposition header
[phpmyadmin/crack.git] / schema_export.php
blob3e1067d55e273fef790d04b666e36a6614903192
1 <?php
2 /* vim: set expandtab sw=4 ts=4 sts=4: */
3 /**
5 * @package phpMyAdmin
6 */
8 /**
9 * Gets some core libraries
11 require_once './libraries/common.inc.php';
12 require './libraries/StorageEngine.class.php';
14 /**
15 * Include settings for relation stuff
16 * get all variables needed for exporting relational schema
17 * in $cfgRelation
19 require_once './libraries/relation.lib.php';
20 $cfgRelation = PMA_getRelationsParam();
22 require_once './libraries/transformations.lib.php';
23 require_once './libraries/Index.class.php';
25 /**
26 * This is to avoid "Command out of sync" errors. Before switching this to
27 * a value of 0 (for MYSQLI_USE_RESULT), please check the logic
28 * to free results wherever needed.
30 $query_default_option = PMA_DBI_QUERY_STORE;
32 include_once("./libraries/schema/Export_Relation_Schema.class.php");
34 /**
35 * get all the export options and verify
36 * call and include the appropriate Schema Class depending on $export_type
37 * default is PDF
39 global $db,$export_type;
40 if (!isset($export_type) || !preg_match('/^[a-zA-Z]+$/', $export_type)) {
41 $export_type = 'pdf';
43 PMA_DBI_select_db($db);
45 $path = PMA_securePath(ucfirst($export_type));
46 if (!file_exists('./libraries/schema/' . $path . '_Relation_Schema.class.php')) {
47 PMA_Export_Relation_Schema::dieSchema($_POST['chpage'],$export_type,__('File doesn\'t exist'));
49 include("./libraries/schema/".$path."_Relation_Schema.class.php");
50 $obj_schema = eval("new PMA_".$path."_Relation_Schema();");