diff --git a/libraries/dbi/DBIDummy.php b/libraries/dbi/DBIDummy.php index 0fd2f00503..ee4409f206 100644 --- a/libraries/dbi/DBIDummy.php +++ b/libraries/dbi/DBIDummy.php @@ -866,6 +866,10 @@ $GLOBALS['dummy_queries'] = array( 'query' => 'SELECT @@ndb_version_string', 'result' => array(array('ndb-7.4.10')), ), + array( + 'query' => "SELECT *, `COLUMN_NAME` AS `Field`, `COLUMN_TYPE` AS `Type`, `COLLATION_NAME` AS `Collation`, `IS_NULLABLE` AS `Null`, `COLUMN_KEY` AS `Key`, `COLUMN_DEFAULT` AS `Default`, `EXTRA` AS `Extra`, `PRIVILEGES` AS `Privileges`, `COLUMN_COMMENT` AS `Comment` FROM `information_schema`.`COLUMNS` WHERE `TABLE_SCHEMA` = 'information_schema' AND `TABLE_NAME` = 'PMA'", + 'result' => array(), + ), ); /** * Current database. diff --git a/libraries/relation.lib.php b/libraries/relation.lib.php index ac6334d2d9..310aed76de 100644 --- a/libraries/relation.lib.php +++ b/libraries/relation.lib.php @@ -862,9 +862,13 @@ function PMA_getDisplayField($db, $table) /** * Pick first char field */ - foreach ($GLOBALS['dbi']->getColumnsFull($db, $table) as $column) { - if ($GLOBALS['PMA_Types']->getTypeClass($column['DATA_TYPE']) == 'CHAR') { - return $column['COLUMN_NAME']; + $columns = $GLOBALS['dbi']->getColumnsFull($db, $table); + if ($columns) { + foreach ($columns as $column) { + var_dump($column); + if ($GLOBALS['PMA_Types']->getTypeClass($column['DATA_TYPE']) == 'CHAR') { + return $column['COLUMN_NAME']; + } } } diff --git a/test/libraries/PMA_relation_test.php b/test/libraries/PMA_relation_test.php index 700a4b145b..fe60a4f5e3 100644 --- a/test/libraries/PMA_relation_test.php +++ b/test/libraries/PMA_relation_test.php @@ -38,6 +38,7 @@ class PMA_Relation_Test extends PHPUnit_Framework_TestCase $GLOBALS['db'] = 'db'; $GLOBALS['cfg']['Server']['user'] = 'root'; $GLOBALS['cfg']['Server']['pmadb'] = 'phpmyadmin'; + $GLOBALS['cfg']['Server']['DisableIS'] = false; $GLOBALS['cfg']['ZeroConf'] = true; $_SESSION['relation'][$GLOBALS['server']] = "PMA_relation"; $_SESSION['relation'] = array();