unmark php,server_databases.php

该页面展示了MySQL服务器上数据库的管理操作,包括显示、创建数据库,以及统计数据库信息。用户可以选择删除多个数据库,或者根据不同的统计字段进行排序查看。此外,还提供了启用或禁用数据库统计的功能,并警告启用统计可能带来的服务器与Web服务器之间的高流量问题。
摘要由CSDN通过智能技术生成

/* vim: set expandtab sw=4 ts=4 sts=4: */

/**

*

* @package PhpMyAdmin

*/

/**

* Does the common work

*/

require_once './libraries/common.inc.php';

require './libraries/server_common.inc.php';

if (!PMA_DRIZZLE) {

include_once './libraries/replication.inc.php';

} else {

$replication_types = array();

$replication_info = null;

}

require './libraries/build_html_for_db.lib.php';

/**

* avoids 'undefined index' errors

*/

if (empty($_REQUEST['sort_by'])) {

$sort_by = 'SCHEMA_NAME';

} else {

$sort_by_whitelist = array(

'SCHEMA_NAME',

'DEFAULT_COLLATION_NAME',

'SCHEMA_TABLES',

'SCHEMA_TABLE_ROWS',

'SCHEMA_DATA_LENGTH',

'SCHEMA_INDEX_LENGTH',

'SCHEMA_LENGTH',

'SCHEMA_DATA_FREE'

);

if (in_array($_REQUEST['sort_by'], $sort_by_whitelist)) {

$sort_by = $_REQUEST['sort_by'];

} else {

$sort_by = 'SCHEMA_NAME';

}

}

if (isset($_REQUEST['sort_order'])

&& strtolower($_REQUEST['sort_order']) == 'desc') {

$sort_order = 'desc';

} else {

$sort_order = 'asc';

}

$dbstats = empty($_REQUEST['dbstats']) ? 0 : 1;

$pos = empty($_REQUEST['pos']) ? 0 : (int) $_REQUEST['pos'];

/**

* Drops multiple databases

*/

// workaround for IE behavior (it returns some coordinates based on where

// the mouse was on the Drop image):

if (isset($_REQUEST['drop_selected_dbs_x'])) {

$_REQUEST['drop_selected_dbs'] = true;

}

if ((isset($_REQUEST['drop_selected_dbs']) || isset($_REQUEST['query_type']))

&& ($is_superuser || $cfg['AllowUserDropDatabase'])) {

if (! isset($_REQUEST['selected_dbs']) && ! isset($_REQUEST['query_type'])) {

$message = PMA_Message::error(__('No databases selected.'));

} else {

$action = 'server_databases.php';

$submit_mult = 'drop_db' ;

$err_url = 'server_databases.php?' . PMA_generate_common_url();

if (isset($_REQUEST['selected_dbs'])) {

$selected_db = $_REQUEST['selected_dbs'];

}

include './libraries/mult_submits.inc.php';

unset($action, $submit_mult, $err_url, $selected_db, $GLOBALS['db']);

if (empty($message)) {

$message = PMA_Message::success(__('%s databases have been dropped successfully.'));

if ($mult_btn == __('Yes')) {

$message->addParam(count($selected));

} else {

$message->addParam(0);

}

}

}

}

/**

* Displays the links

*/

require './libraries/server_links.inc.php';

/**

* Displays the sub-page heading

*/

echo '

' . "\n"

. ($GLOBALS['cfg']['MainPageIconic']

? PMA_getImage('s_db.png')

: '')

. ($dbstats ? __('Databases statistics') : __('Databases')) . "\n"

.'' . "\n";

/**

* Create database.

*/

if ($cfg['ShowCreateDb']) {

echo '

  • ' . "\n";

    include './libraries/display_create_database.lib.php';

    echo '

    ' . "\n";

echo '

' . "\n";

}

/**

* Gets the databases list

*/

if ($server > 0) {

$databases = PMA_DBI_get_databases_full(null, $dbstats, null, $sort_by,

$sort_order, $pos, true);

$databases_count = count($GLOBALS['pma']->databases);

} else {

$databases_count = 0;

}

/**

* Displays the page

*/

if ($databases_count > 0) {

echo '

';

reset($databases);

$first_database = current($databases);

// table col order

$column_order = PMA_getColumnOrder();

$_url_params = array(

'pos' => $pos,

'dbstats' => $dbstats,

'sort_by' => $sort_by,

'sort_order' => $sort_order,

);

PMA_listNavigator($databases_count, $pos, $_url_params, 'server_databases.php', 'frame_content', $GLOBALS['cfg']['MaxDbList']);

$_url_params['pos'] = $pos;

echo '

' . "\n"

. PMA_generate_common_hidden_inputs($_url_params);

$_url_params['sort_by'] = 'SCHEMA_NAME';

$_url_params['sort_order'] = ($sort_by == 'SCHEMA_NAME' && $sort_order == 'asc') ? 'desc' : 'asc';

echo '

. '' . "\n"

. '

' . "\n"

. ($is_superuser || $cfg['AllowUserDropDatabase'] ? '

' . "\n" : '')

. '

' . "\n"

. ' ' . __('Database') . "\n"

. ($sort_by == 'SCHEMA_NAME' ? ' ' . PMA_getImage('s_' . $sort_order . '.png', ($sort_order == 'asc' ? __('Ascending') : __('Descending'))) . "\n" : '')

. '

' . "\n";

$table_columns = 3;

foreach ($column_order as $stat_name => $stat) {

if (array_key_exists($stat_name, $first_database)) {

if ($stat['format'] === 'byte') {

$table_columns += 2;

$colspan = ' colspan="2"';

} else {

$table_columns++;

$colspan = '';

}

$_url_params['sort_by'] = $stat_name;

$_url_params['sort_order'] = ($sort_by == $stat_name && $sort_order == 'desc') ? 'asc' : 'desc';

echo '

'

.'' . "\n"

.' ' . $stat['disp_name'] . "\n"

.($sort_by == $stat_name ? ' ' . PMA_getImage('s_' . $sort_order . '.png', ($sort_order == 'asc' ? __('Ascending') : __('Descending'))) . "\n" : '')

.'

' . "\n";

}

}

foreach ($replication_types as $type) {

if ($type=="master")

$name = __('Master replication');

elseif ($type == "slave")

$name = __('Slave replication');

if (${"server_{$type}_status"})

echo '

'. $name .'' . "\n";

}

if ($is_superuser && !PMA_DRIZZLE) {

echo '

' . ($cfg['PropertiesIconic'] ? '' : __('Action')) . "\n"

. '

' . "\n";

}

echo '

' . "\n"

. '

' . "\n"

. '

' . "\n";

$odd_row = true;

foreach ($databases as $current) {

$tr_class = $odd_row ? 'odd' : 'even';

if (PMA_is_system_schema($current['SCHEMA_NAME'], true)) {

$tr_class .= ' noclick';

}

echo '

' . "\n";

$odd_row = ! $odd_row;

list($column_order, $generated_html) = PMA_buildHtmlForDb($current, $is_superuser, (isset($checkall) ? $checkall : ''), $url_query, $column_order, $replication_types, $replication_info);

echo $generated_html;

echo '

' . "\n";

} // end foreach ($databases as $key => $current)

unset($current, $odd_row);

echo '

' . "\n";

if ($is_superuser || $cfg['AllowUserDropDatabase']) {

echo '

' . "\n";

}

echo '

' . __('Total') . ': ' . $databases_count . '' . "\n";

foreach ($column_order as $stat_name => $stat) {

if (array_key_exists($stat_name, $first_database)) {

if ($stat['format'] === 'byte') {

list($value, $unit) = PMA_formatByteDown($stat['footer'], 3, 1);

} elseif ($stat['format'] === 'number') {

$value = PMA_formatNumber($stat['footer'], 0);

} else {

$value = htmlentities($stat['footer'], 0);

}

echo '

';

if (isset($stat['description_function'])) {

echo '';

}

echo $value;

if (isset($stat['description_function'])) {

echo '';

}

echo '

' . "\n";

if ($stat['format'] === 'byte') {

echo '

' . $unit . '' . "\n";

}

}

}

foreach ($replication_types as $type) {

if (${"server_{$type}_status"}) {

echo '

' . "\n";

}

}

if ($is_superuser) {

echo '

' . "\n";

}

echo '

' . "\n";

echo '

' . "\n"

.'

' . "\n";

unset($column_order, $stat_name, $stat, $databases, $table_columns);

if ($is_superuser || $cfg['AllowUserDropDatabase']) {

$common_url_query = PMA_generate_common_url(array('sort_by' => $sort_by, 'sort_order' => $sort_order, 'dbstats' => $dbstats));

echo '' . __('With selected:') . '' . "\n"

. '' . "\n"

. ' ' . __('Check All') . ' / ' . "\n"

. '' . "\n"

. ' ' . __('Uncheck All') . '' . "\n"

. '' . __('With selected:') . '' . "\n";

PMA_buttonOrImage('drop_selected_dbs', 'mult_submit', 'drop_selected_dbs', __('Drop'), 'b_deltbl.png');

}

if (empty($dbstats)) {

echo '

' . "\n";

}

echo '

';

echo '

';

} else {

echo __('No databases');

}

unset($databases_count);

/**

* Sends the footer

*/

require './libraries/footer.inc.php';

?>

一键复制

编辑

Web IDE

原始数据

按行查看

历史

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值