0) {
while ($tmp = PMA_DBI_fetch_row($db_info_result)) {
// if in use memorize tablename
if (preg_match('@in_use=[1-9]+@i', $tmp[1])) {
$sot_cache[$tmp[0]] = true;
}
}
PMA_DBI_free_result($db_info_result);
if (isset($sot_cache)) {
$db_info_result = PMA_DBI_query(
'SHOW TABLES FROM ' . PMA_backquote($db) . $tbl_group_sql . ';',
null, PMA_DBI_QUERY_STORE);
if ($db_info_result && PMA_DBI_num_rows($db_info_result) > 0) {
while ($tmp = PMA_DBI_fetch_row($db_info_result)) {
if (!isset($sot_cache[$tmp[0]])) {
$sts_result = PMA_DBI_query(
'SHOW TABLE STATUS FROM ' . PMA_backquote($db)
. ' LIKE \'' . addslashes($tmp[0]) . '\';');
$sts_tmp = PMA_DBI_fetch_assoc($sts_result);
PMA_DBI_free_result($sts_result);
unset($sts_result);
if (!isset($sts_tmp['Type']) && isset($sts_tmp['Engine'])) {
$sts_tmp['Type'] =& $sts_tmp['Engine'];
}
if (!empty($tbl_group) && $cfg['ShowTooltipAliasTB']
&& !preg_match('@' . preg_quote($tbl_group, '@') . '@i', $sts_tmp['Comment'])) {
continue;
}
if ($cfg['ShowTooltip']) {
PMA_fillTooltip($tooltip_truename, $tooltip_aliasname, $sts_tmp);
}
$tables[$sts_tmp['Name']] = $sts_tmp;
} else { // table in use
$tables[$tmp[0]] = array('Name' => $tmp[0]);
}
}
if ($GLOBALS['cfg']['NaturalOrder']) {
uksort($tables, 'strnatcasecmp');
}
$sot_ready = true;
} elseif ($db_info_result) {
PMA_DBI_free_result($db_info_result);
}
unset($sot_cache);
}
unset($tmp);
} elseif ($db_info_result) {
PMA_DBI_free_result($db_info_result);
}
}
if (! isset($sot_ready)) {
if (! empty($tbl_group) && ! $cfg['ShowTooltipAliasTB']) {
// only tables for selected group
$tables = PMA_DBI_get_tables_full($db, $tbl_group, true);
} elseif (! empty($tbl_group) && $cfg['ShowTooltipAliasTB']) {
// only tables for selected group,
// but grouping is done on comment ...
$tables = PMA_DBI_get_tables_full($db, $tbl_group, 'comment');
} else {
// all tables in db
// - get the total number of tables
// (needed for proper working of the MaxTableList feature)
$tables = PMA_DBI_get_tables($db);
$total_num_tables = count($tables);
if (isset($sub_part) && $sub_part == '_export') {
// (don't fetch only a subset if we are coming from db_export.php,
// because I think it's too risky to display only a subset of the
// table names when exporting a db)
/**
*
* @todo Page selector for table names?
*/
$tables = PMA_DBI_get_tables_full($db, false, false, null, 0, false);
} else {
// fetch the details for a possible limited subset
$tables = PMA_DBI_get_tables_full($db, false, false, null, $pos, true);
}
}
if ($cfg['ShowTooltip']) {
foreach ($tables as $each_table) {
PMA_fillTooltip($tooltip_truename, $tooltip_aliasname, $each_table);
}
}
}
/**
* @global int count of tables in db
*/
$num_tables = count($tables);
// (needed for proper working of the MaxTableList feature)
if (! isset($total_num_tables)) {
$total_num_tables = $num_tables;
}
/**
* cleanup
*/
unset($each_table, $tbl_group_sql, $db_info_result);
/**
* Displays top menu links
*/
require './libraries/db_links.inc.php';
?>