1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
<?php /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * Common includes for the database level views * * @package PhpMyAdmin */ if (! defined('PHPMYADMIN')) { exit; }
/** * Gets some core libraries */ require_once './libraries/bookmark.lib.php';
PMA_Util::checkParameters(array('db'));
$is_show_stats = $cfg['ShowStats'];
$db_is_information_schema = PMA_is_system_schema($db); if ($db_is_information_schema) { $is_show_stats = false; }
/** * Defines the urls to return to in case of error in a sql statement */ $err_url_0 = 'index.php?' . PMA_generate_common_url(); $err_url = $cfg['DefaultTabDatabase'] . '?' . PMA_generate_common_url($db);
/** * Ensures the database exists (else move to the "parent" script) and displays * headers */ if (! isset($is_db) || ! $is_db) { if (strlen($db)) { $is_db = PMA_DBI_select_db($db); // This "Command out of sync" 2014 error may happen, for example // after calling a MySQL procedure; at this point we can't select // the db but it's not necessarily wrong if (PMA_DBI_getError() && $GLOBALS['errno'] == 2014) { $is_db = true; unset($GLOBALS['errno']); } } // Not a valid db name -> back to the welcome page $uri = $cfg['PmaAbsoluteUri'] . 'index.php?' . PMA_generate_common_url('', '', '&') . (isset($message) ? '&message=' . urlencode($message) : '') . '&reload=1'; if (! strlen($db) || ! $is_db) { $response = PMA_Response::getInstance(); if ($response->isAjax()) { $response->isSuccess(false); $response->addJSON( 'message', PMA_Message::error(__('No databases selected.')) ); } else { PMA_sendHeaderLocation($uri); } exit; } } // end if (ensures db exists)
/** * Changes database charset if requested by the user */ if (isset($_REQUEST['submitcollation']) && isset($_REQUEST['db_collation']) && ! empty($_REQUEST['db_collation']) ) { list($db_charset) = explode('_', $_REQUEST['db_collation']); $sql_query = 'ALTER DATABASE ' . PMA_Util::backquote($db) . ' DEFAULT' . PMA_generateCharsetQueryPart($_REQUEST['db_collation']); $result = PMA_DBI_query($sql_query); $message = PMA_Message::success(); unset($db_charset);
/** * If we are in an Ajax request, let us stop the execution here. Necessary for * db charset change action on db_operations.php. If this causes a bug on * other pages, we might have to move this to a different location. */ if ( $GLOBALS['is_ajax_request'] == true) { $response = PMA_Response::getInstance(); $response->isSuccess($message->isSuccess()); $response->addJSON('message', $message); exit; } }
/** * Set parameters for links */ $url_query = PMA_generate_common_url($db);
?>
|