0, a server has been chosen so we can display
// all MySQL-related information
if ($server > 0) {
require 'libraries/server_common.inc.php';
require 'libraries/StorageEngine.class.php';
require 'libraries/server_links.inc.php';
// Use the verbose name of the server instead of the hostname
// if a value is set
$server_info = '';
if (! empty($cfg['Server']['verbose'])) {
$server_info .= htmlspecialchars($cfg['Server']['verbose']);
if ($GLOBALS['cfg']['ShowServerInfo']) {
$server_info .= ' (';
}
}
if ($GLOBALS['cfg']['ShowServerInfo'] || empty($cfg['Server']['verbose'])) {
$server_info .= PMA_DBI_get_host_info();
}
if (! empty($cfg['Server']['verbose']) && $GLOBALS['cfg']['ShowServerInfo']) {
$server_info .= ')';
}
$mysql_cur_user_and_host = PMA_DBI_fetch_value('SELECT USER();');
// should we add the port info here?
$short_server_info = (!empty($GLOBALS['cfg']['Server']['verbose'])
? $GLOBALS['cfg']['Server']['verbose']
: $GLOBALS['cfg']['Server']['host']);
}
echo '
' . "\n";
echo '
';
if ($server > 0
|| (! $cfg['LeftDisplayServers'] && count($cfg['Servers']) > 1)) {
echo '
';
echo '
' . __('General Settings') . '
';
echo '
';
/**
* Displays the MySQL servers choice form
*/
if (! $cfg['LeftDisplayServers']
&& (count($cfg['Servers']) > 1 || $server == 0 && count($cfg['Servers']) == 1)) {
echo '- ';
require_once 'libraries/select_server.lib.php';
PMA_select_server(true, true);
echo '
';
}
/**
* Displays the mysql server related links
*/
if ($server > 0) {
require_once 'libraries/check_user_privileges.lib.php';
if (!PMA_DRIZZLE) {
// Logout for advanced authentication
if ($cfg['Server']['auth_type'] != 'config') {
if ($cfg['ShowChgPassword']) {
if ($GLOBALS['cfg']['AjaxEnable']) {
$conditional_class = 'ajax';
} else {
$conditional_class = null;
}
PMA_printListItem(__('Change password'), 'li_change_password',
'./user_password.php?' . $common_url_query, null, null, 'change_password_anchor', null, $conditional_class);
}
} // end if
echo ' - ';
echo ' ' . "\n"
. '
' . "\n";
} // not Drizzle
} // end of if ($server > 0)
echo '
';
echo '
';
}
echo '
';
echo '
' . __('Appearance Settings') . '
';
echo '
';
// Displays language selection combo
if (empty($cfg['Lang'])) {
echo '- ';
require_once 'libraries/display_select_lang.lib.php';
PMA_select_language();
echo '
';
}
// ThemeManager if available
if ($GLOBALS['cfg']['ThemeManager']) {
echo '- ';
echo $_SESSION['PMA_Theme_Manager']->getHtmlSelectBox();
echo '
';
}
echo '- ';
echo PMA_Config::getFontsizeForm();
echo '
';
echo '
';
// User preferences
echo '
';
echo PMA_printListItem(__('More settings'), 'li_user_preferences',
'./prefs_manage.php?' . $common_url_query);
echo '
';
echo '
';
echo '
';
echo '
';
if ($server > 0 && $GLOBALS['cfg']['ShowServerInfo']) {
echo '
';
echo '
MySQL
';
echo '
' . "\n";
PMA_printListItem(__('Server') . ': ' . $server_info, 'li_server_info');
PMA_printListItem(__('Server version') . ': ' . PMA_MYSQL_STR_VERSION, 'li_server_version');
PMA_printListItem(__('Protocol version') . ': ' . PMA_DBI_get_proto_info(),
'li_mysql_proto');
PMA_printListItem(__('User') . ': ' . htmlspecialchars($mysql_cur_user_and_host),
'li_user_info');
echo ' - ';
echo ' ' . __('MySQL charset') . ': '
. ' '
. ' ' . $mysql_charsets_descriptions[$mysql_charset_map[strtolower($charset)]] . "\n"
. ' (' . $mysql_charset_map[strtolower($charset)] . ')' . "\n"
. ' ' . "\n"
. '
' . "\n";
echo '
';
echo '
';
}
if ($GLOBALS['cfg']['ShowServerInfo'] || $GLOBALS['cfg']['ShowPhpInfo']) {
echo '
';
echo '
' . __('Web server') . '
';
echo '
';
if ($GLOBALS['cfg']['ShowServerInfo']) {
PMA_printListItem($_SERVER['SERVER_SOFTWARE'], 'li_web_server_software');
if ($server > 0) {
PMA_printListItem(__('MySQL client version') . ': ' . PMA_DBI_get_client_info(),
'li_mysql_client_version');
PMA_printListItem(__('PHP extension') . ': ' . $GLOBALS['cfg']['Server']['extension'] . ' ' . PMA_showPHPDocu('book.' . $GLOBALS['cfg']['Server']['extension'] . '.php'),
'li_used_php_extension');
}
}
if ($cfg['ShowPhpInfo']) {
PMA_printListItem(__('Show PHP information'), 'li_phpinfo', './phpinfo.php?' . $common_url_query);
}
echo '
';
echo '
';
}
echo '
';
echo '
phpMyAdmin
';
echo '
';
$class = null;
// workaround for bug 3302733; some browsers don't like the situation
// where phpMyAdmin is called on a secure page but a part of the page
// (the version check) refers to a non-secure page
if ($GLOBALS['cfg']['VersionCheck'] && ! $GLOBALS['PMA_Config']->get('is_https')) {
$class = 'jsversioncheck';
}
PMA_printListItem(__('Version information') . ': ' . PMA_VERSION, 'li_pma_version', null, null, null, null, $class);
PMA_printListItem(__('Documentation'), 'li_pma_docs', 'Documentation.html', null, '_blank');
PMA_printListItem(__('Wiki'), 'li_pma_wiki', PMA_linkURL('http://wiki.phpmyadmin.net/'), null, '_blank');
// does not work if no target specified, don't know why
PMA_printListItem(__('Official Homepage'), 'li_pma_homepage', PMA_linkURL('http://www.phpMyAdmin.net/'), null, '_blank');
PMA_printListItem(__('Contribute'), 'li_pma_contribute', PMA_linkURL('http://www.phpmyadmin.net/home_page/improve.php'), null, '_blank');
PMA_printListItem(__('Get support'), 'li_pma_support', PMA_linkURL('http://www.phpmyadmin.net/home_page/support.php'), null, '_blank');
PMA_printListItem(__('List of changes'), 'li_pma_changes', PMA_linkURL('changelog.php'), null, '_blank');
?>
here, otherwise it will not extend the outer div to the
* full height of the inner divs
*/
?>
1) {
trigger_error(__('You have enabled mbstring.func_overload in your PHP configuration. This option is incompatible with phpMyAdmin and might cause some data to be corrupted!'), E_USER_WARNING);
}
/**
* Nijel: mbstring is used for handling multibyte inside parser, so it is good
* to tell user something might be broken without it, see bug #1063149.
*/
if (! @extension_loaded('mbstring')) {
trigger_error(__('The mbstring PHP extension was not found and you seem to be using a multibyte charset. Without the mbstring extension phpMyAdmin is unable to split strings correctly and it may result in unexpected results.'), E_USER_WARNING);
}
/**
* Check whether session.gc_maxlifetime limits session validity.
*/
$gc_time = (int)@ini_get('session.gc_maxlifetime');
if ($gc_time < $GLOBALS['cfg']['LoginCookieValidity'] ) {
trigger_error(PMA_Message::decodeBB(__('Your PHP parameter [a@http://php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime@]session.gc_maxlifetime[/a] is lower that cookie validity configured in phpMyAdmin, because of this, your login will expire sooner than configured in phpMyAdmin.')), E_USER_WARNING);
}
/**
* Check whether LoginCookieValidity is limited by LoginCookieStore.
*/
if ($GLOBALS['cfg']['LoginCookieStore'] != 0 && $GLOBALS['cfg']['LoginCookieStore'] < $GLOBALS['cfg']['LoginCookieValidity']) {
trigger_error(PMA_Message::decodeBB(__('Login cookie store is lower than cookie validity configured in phpMyAdmin, because of this, your login will expire sooner than configured in phpMyAdmin.')), E_USER_WARNING);
}
/**
* Check if user does not have defined blowfish secret and it is being used.
*/
if (!empty($_SESSION['auto_blowfish_secret']) &&
empty($GLOBALS['cfg']['blowfish_secret'])) {
trigger_error(__('The configuration file now needs a secret passphrase (blowfish_secret).'), E_USER_WARNING);
}
/**
* Check for existence of config directory which should not exist in
* production environment.
*/
if (file_exists('./config')) {
trigger_error(__('Directory [code]config[/code], which is used by the setup script, still exists in your phpMyAdmin directory. You should remove it once phpMyAdmin has been configured.'), E_USER_WARNING);
}
/**
* Check whether relations are supported.
*/
if ($server > 0) {
$cfgRelation = PMA_getRelationsParam();
if(!$cfgRelation['allworks'] && $cfg['PmaNoRelation_DisableWarning'] == false) {
$message = PMA_Message::notice(__('The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated. To find out why click %shere%s.'));
$message->addParam('