You've already forked phpmyadmin
mirror of
https://github.com/phpmyadmin/phpmyadmin.git
synced 2026-10-28 07:41:55 +03:00
UPDATE 4.3.11.1
This commit is contained in:
13
ChangeLog
13
ChangeLog
@@ -1,6 +1,19 @@
|
||||
phpMyAdmin - ChangeLog
|
||||
======================
|
||||
|
||||
4.3.11.1 (2015-03-04)
|
||||
- bug [security] Risk of BREACH attack, see PMASA-2015-1
|
||||
|
||||
4.3.11.0 (2015-03-02)
|
||||
- bug #4774 SQL links are completely wrong
|
||||
- bug #4768 MariaDB: version mismatch
|
||||
- bug #4777 Some images are missing in Designer for original theme
|
||||
- bug #4767 Drizzle: undefined index in mysql_charsets.inc.php
|
||||
- bug #4753 Normal field and multi-line field have different margins
|
||||
- bug #4760 Cannot re-import settings from local storage
|
||||
- bug #4778 SQL error when database list is sorted by additional columns
|
||||
- bug #4780 Notice when timestamp column does not have default value
|
||||
|
||||
4.3.10.0 (2015-02-20)
|
||||
- bug Undefined index navwork
|
||||
- bug #4744 Opening console scroll down the page
|
||||
|
||||
2
README
2
README
@@ -1,7 +1,7 @@
|
||||
phpMyAdmin - Readme
|
||||
===================
|
||||
|
||||
Version 4.3.10
|
||||
Version 4.3.11.1
|
||||
|
||||
A set of PHP-scripts to manage MySQL over the web.
|
||||
|
||||
|
||||
@@ -564,6 +564,8 @@ if ($server > 0) {
|
||||
* If no default server is set, $GLOBALS['dbi'] is not defined yet.
|
||||
* Drizzle can speak MySQL protocol, so don't warn about version mismatch for
|
||||
* Drizzle servers.
|
||||
* We also do not warn if MariaDB is detected, as it has its own version
|
||||
* numbering.
|
||||
*/
|
||||
if (isset($GLOBALS['dbi'])
|
||||
&& !PMA_DRIZZLE
|
||||
@@ -575,6 +577,7 @@ if (isset($GLOBALS['dbi'])
|
||||
$_client_info = $GLOBALS['dbi']->getClientInfo();
|
||||
if ($server > 0
|
||||
&& /*overload*/mb_strpos($_client_info, 'mysqlnd') === false
|
||||
&& /*overload*/mb_strpos(PMA_MYSQL_STR_VERSION, 'MariaDB') === false
|
||||
&& substr(PMA_MYSQL_CLIENT_API, 0, 3) != substr(
|
||||
PMA_MYSQL_INT_VERSION, 0, 3
|
||||
)
|
||||
|
||||
@@ -1776,7 +1776,7 @@ function PMA_doc_add($elm, params)
|
||||
}
|
||||
|
||||
var url = PMA_sprintf(
|
||||
mysql_doc_template,
|
||||
decodeURIComponent(mysql_doc_template),
|
||||
params[0]
|
||||
);
|
||||
if (params.length > 1) {
|
||||
|
||||
@@ -114,7 +114,7 @@ class PMA_Config
|
||||
*/
|
||||
function checkSystem()
|
||||
{
|
||||
$this->set('PMA_VERSION', '4.3.10');
|
||||
$this->set('PMA_VERSION', '4.3.11.1');
|
||||
/**
|
||||
* @deprecated
|
||||
*/
|
||||
|
||||
@@ -985,7 +985,13 @@ class PMA_DatabaseInterface
|
||||
}
|
||||
$sql .= $sql_where_schema . '
|
||||
GROUP BY BINARY s.SCHEMA_NAME
|
||||
ORDER BY BINARY ' . PMA_Util::backquote($sort_by)
|
||||
ORDER BY ';
|
||||
if ($sort_by == 'SCHEMA_NAME'
|
||||
|| $sort_by == 'DEFAULT_COLLATION_NAME'
|
||||
) {
|
||||
$sql .= 'BINARY ';
|
||||
}
|
||||
$sql .= PMA_Util::backquote($sort_by)
|
||||
. ' ' . $sort_order
|
||||
. $limit;
|
||||
}
|
||||
|
||||
@@ -3701,7 +3701,8 @@ class PMA_Util
|
||||
&& empty($field['Default'])
|
||||
&& empty($data)
|
||||
&& ! isset($analyzed_sql_field_array['on_update_current_timestamp'])
|
||||
&& ($analyzed_sql_field_array['default_value'] != 'NULL')
|
||||
&& ! (isset($analyzed_sql_field_array['default_value'])
|
||||
&& $analyzed_sql_field_array['default_value'] == 'NULL')
|
||||
) {
|
||||
$default_function = $cfg['DefaultFunctions']['first_timestamp'];
|
||||
}
|
||||
|
||||
@@ -701,32 +701,32 @@ function PMA_getDatabaseTables(
|
||||
|
||||
if (isset($tables_pk_or_unique_keys[$t_n . "." . $tab_column[$t_n]["COLUMN_NAME"][$j]])) {
|
||||
|
||||
$html .= '<img src="' . $_SESSION['PMA_Theme']->getImgPath()
|
||||
. 'pmd/FieldKey_small.png" alt="*" />';
|
||||
|
||||
$html .= '<img src="'
|
||||
. $_SESSION['PMA_Theme']->getImgPath('pmd/FieldKey_small.png')
|
||||
. '" alt="*" />';
|
||||
} else {
|
||||
|
||||
$html .= '<img src="' . $_SESSION['PMA_Theme']->getImgPath()
|
||||
. 'pmd/Field_small';
|
||||
|
||||
$image = 'pmd/Field_small';
|
||||
if (strstr($tab_column[$t_n]["TYPE"][$j], 'char')
|
||||
|| strstr($tab_column[$t_n]["TYPE"][$j], 'text')
|
||||
) {
|
||||
$html .= '_char';
|
||||
$image .= '_char';
|
||||
} elseif (strstr($tab_column[$t_n]["TYPE"][$j], 'int')
|
||||
|| strstr($tab_column[$t_n]["TYPE"][$j], 'float')
|
||||
|| strstr($tab_column[$t_n]["TYPE"][$j], 'double')
|
||||
|| strstr($tab_column[$t_n]["TYPE"][$j], 'decimal')
|
||||
) {
|
||||
$html .= '_int';
|
||||
$image .= '_int';
|
||||
} elseif (strstr($tab_column[$t_n]["TYPE"][$j], 'date')
|
||||
|| strstr($tab_column[$t_n]["TYPE"][$j], 'time')
|
||||
|| strstr($tab_column[$t_n]["TYPE"][$j], 'year')
|
||||
) {
|
||||
$html .= '_date';
|
||||
$image .= '_date';
|
||||
}
|
||||
$image .= '.png';
|
||||
|
||||
$html .= '.png" alt="*" />';
|
||||
$html .= '<img src="'
|
||||
. $_SESSION['PMA_Theme']->getImgPath($image) . '" alt="*" />';
|
||||
}
|
||||
|
||||
$html .= htmlspecialchars(
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
$GLOBALS["language_stats"] = array (
|
||||
'af' => 10,
|
||||
'ar' => 38,
|
||||
'az' => 53,
|
||||
'az' => 54,
|
||||
'be@latin' => 27,
|
||||
'be' => 27,
|
||||
'bg' => 62,
|
||||
@@ -32,15 +32,15 @@ $GLOBALS["language_stats"] = array (
|
||||
'hr' => 33,
|
||||
'hu' => 100,
|
||||
'hy' => 3,
|
||||
'ia' => 64,
|
||||
'ia' => 68,
|
||||
'id' => 75,
|
||||
'it' => 81,
|
||||
'ja' => 73,
|
||||
'ja' => 74,
|
||||
'ka' => 15,
|
||||
'kk' => 10,
|
||||
'km' => 6,
|
||||
'kn' => 2,
|
||||
'ko' => 82,
|
||||
'ko' => 83,
|
||||
'ksh' => 1,
|
||||
'ky' => 1,
|
||||
'lt' => 49,
|
||||
@@ -76,7 +76,7 @@ $GLOBALS["language_stats"] = array (
|
||||
'ur' => 20,
|
||||
'uz@latin' => 36,
|
||||
'uz' => 37,
|
||||
'vi' => 1,
|
||||
'vi' => 2,
|
||||
'vls' => 3,
|
||||
'zh_CN' => 82,
|
||||
'zh_TW' => 97,
|
||||
|
||||
@@ -43,43 +43,29 @@ if (! PMA_Util::cacheExists('mysql_charsets')) {
|
||||
: 'SELECT * FROM information_schema.COLLATIONS';
|
||||
$res = $GLOBALS['dbi']->query($sql);
|
||||
while ($row = $GLOBALS['dbi']->fetchAssoc($res)) {
|
||||
if (! is_array($mysql_collations[$row['CHARACTER_SET_NAME']])) {
|
||||
$mysql_collations[$row['CHARACTER_SET_NAME']]
|
||||
= array($row['COLLATION_NAME']);
|
||||
$char_set_name = PMA_DRIZZLE
|
||||
? $row['DESCRIPTION']
|
||||
: $row['CHARACTER_SET_NAME'];
|
||||
if (! is_array($mysql_collations[$char_set_name])) {
|
||||
$mysql_collations[$char_set_name] = array($row['COLLATION_NAME']);
|
||||
} else {
|
||||
$mysql_collations[$row['CHARACTER_SET_NAME']][] = $row['COLLATION_NAME'];
|
||||
$mysql_collations[$char_set_name][] = $row['COLLATION_NAME'];
|
||||
}
|
||||
$mysql_collations_flat[] = $row['COLLATION_NAME'];
|
||||
if ($row['IS_DEFAULT'] == 'Yes' || $row['IS_DEFAULT'] == '1') {
|
||||
$mysql_default_collations[$row['CHARACTER_SET_NAME']]
|
||||
$mysql_default_collations[$char_set_name]
|
||||
= $row['COLLATION_NAME'];
|
||||
}
|
||||
//$mysql_collations_available[$row['Collation']]
|
||||
// = ! isset($row['Compiled']) || $row['Compiled'] == 'Yes';
|
||||
$mysql_collations_available[$row['COLLATION_NAME']] = true;
|
||||
$mysql_charsets_available[$row['CHARACTER_SET_NAME']]
|
||||
= !empty($mysql_charsets_available[$row['CHARACTER_SET_NAME']])
|
||||
$mysql_charsets_available[$char_set_name]
|
||||
= !empty($mysql_charsets_available[$char_set_name])
|
||||
|| !empty($mysql_collations_available[$row['COLLATION_NAME']]);
|
||||
}
|
||||
$GLOBALS['dbi']->freeResult($res);
|
||||
unset($res, $row);
|
||||
|
||||
if (PMA_DRIZZLE
|
||||
&& isset($mysql_collations['utf8_general_ci'])
|
||||
&& isset($mysql_collations['utf8'])
|
||||
) {
|
||||
$mysql_collations['utf8'] = $mysql_collations['utf8_general_ci'];
|
||||
$mysql_default_collations['utf8']
|
||||
= $mysql_default_collations['utf8_general_ci'];
|
||||
$mysql_charsets_available['utf8']
|
||||
= $mysql_charsets_available['utf8_general_ci'];
|
||||
unset(
|
||||
$mysql_collations['utf8_general_ci'],
|
||||
$mysql_default_collations['utf8_general_ci'],
|
||||
$mysql_charsets_available['utf8_general_ci']
|
||||
);
|
||||
}
|
||||
|
||||
sort($mysql_collations_flat, SORT_STRING);
|
||||
foreach ($mysql_collations as $key => $value) {
|
||||
sort($mysql_collations[$key], SORT_STRING);
|
||||
|
||||
@@ -600,34 +600,14 @@ $GLOBALS['l']['w_page'] = __('Page number:');
|
||||
|
||||
|
||||
// now, that we have loaded the language strings we can send the errors
|
||||
if ($GLOBALS['lang_failed_cfg']) {
|
||||
if ($GLOBALS['lang_failed_cfg']
|
||||
|| $GLOBALS['lang_failed_cookie']
|
||||
|| $GLOBALS['lang_failed_request']) {
|
||||
trigger_error(
|
||||
sprintf(
|
||||
__('Unknown language: %1$s.'),
|
||||
htmlspecialchars($GLOBALS['lang_failed_cfg'])
|
||||
),
|
||||
__('Ignoring unsupported language code.'),
|
||||
E_USER_ERROR
|
||||
);
|
||||
}
|
||||
if ($GLOBALS['lang_failed_cookie']) {
|
||||
trigger_error(
|
||||
sprintf(
|
||||
__('Unknown language: %1$s.'),
|
||||
htmlspecialchars($GLOBALS['lang_failed_cookie'])
|
||||
),
|
||||
E_USER_ERROR
|
||||
);
|
||||
}
|
||||
if ($GLOBALS['lang_failed_request']) {
|
||||
trigger_error(
|
||||
sprintf(
|
||||
__('Unknown language: %1$s.'),
|
||||
htmlspecialchars($GLOBALS['lang_failed_request'])
|
||||
),
|
||||
E_USER_ERROR
|
||||
);
|
||||
}
|
||||
|
||||
unset(
|
||||
$line, $fall_back_lang, $GLOBALS['lang_failed_cfg'],
|
||||
$GLOBALS['lang_failed_cookie'], $GLOBALS['lang_failed_request']
|
||||
|
||||
@@ -110,17 +110,18 @@ function PMA_saveUserprefs(array $config_array)
|
||||
$config_data = json_encode($config_array);
|
||||
if ($has_config) {
|
||||
$query = 'UPDATE ' . $query_table
|
||||
. ' SET `config_data` = \''
|
||||
. ' SET `timevalue` = NOW(), `config_data` = \''
|
||||
. PMA_Util::sqlAddSlashes($config_data)
|
||||
. '\''
|
||||
. ' WHERE `username` = \''
|
||||
. PMA_Util::sqlAddSlashes($cfgRelation['user'])
|
||||
. '\'';
|
||||
} else {
|
||||
$query = 'INSERT INTO ' . $query_table . ' (`username`, `config_data`) '
|
||||
$query = 'INSERT INTO ' . $query_table
|
||||
. ' (`username`, `timevalue`,`config_data`) '
|
||||
. 'VALUES (\''
|
||||
. PMA_Util::sqlAddSlashes($cfgRelation['user']) . '\', \''
|
||||
. PMA_Util::sqlAddSlashes($config_data) . '\')';
|
||||
. PMA_Util::sqlAddSlashes($cfgRelation['user']) . '\', NOW(), '
|
||||
. '\'' . PMA_Util::sqlAddSlashes($config_data) . '\')';
|
||||
}
|
||||
if (isset($_SESSION['cache'][$cache_key]['userprefs'])) {
|
||||
unset($_SESSION['cache'][$cache_key]['userprefs']);
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -324,10 +324,12 @@ input.button:disabled {
|
||||
|
||||
textarea {
|
||||
overflow: visible;
|
||||
margin: 6px;
|
||||
height: <?php echo ceil($GLOBALS['cfg']['TextareaRows'] * 1.2); ?>em;
|
||||
}
|
||||
|
||||
textarea.char {
|
||||
margin: 6px;
|
||||
height: <?php echo ceil($GLOBALS['cfg']['CharTextareaRows'] * 1.2); ?>em;
|
||||
}
|
||||
|
||||
@@ -3414,4 +3416,4 @@ th.headerSortUp .sorticon, th.headerSortDown:hover .sorticon {
|
||||
th.headerSortDown .sorticon, th.headerSortUp:hover .sorticon {
|
||||
background-image: url(<?php echo $_SESSION['PMA_Theme']->getImgPath('s_asc.png');?>);
|
||||
}
|
||||
/* end of styles of sortable tables */
|
||||
/* end of styles of sortable tables */
|
||||
|
||||
Reference in New Issue
Block a user