Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/phpmyadmin/phpmyadmin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Delisle <marc@infomarc.info>2009-12-31 16:11:19 +0300
committerMarc Delisle <marc@infomarc.info>2009-12-31 16:11:19 +0300
commit526dce65cb41e64c40df2939d5a5bc3db7a683d1 (patch)
tree540ab878dde6008deab98c24a0638a09af25776f /db_printview.php
parentf3833884e430cf9104114f391e71925c5f6bd5fa (diff)
3.3
Diffstat (limited to 'db_printview.php')
-rw-r--r--db_printview.php270
1 files changed, 270 insertions, 0 deletions
diff --git a/db_printview.php b/db_printview.php
new file mode 100644
index 0000000000..bf51015f3d
--- /dev/null
+++ b/db_printview.php
@@ -0,0 +1,270 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ *
+ * @version $Id$
+ * @package phpMyAdmin
+ */
+
+/**
+ *
+ */
+require_once './libraries/common.inc.php';
+
+/**
+ * Gets the variables sent or posted to this script, then displays headers
+ */
+$print_view = true;
+require_once './libraries/header.inc.php';
+
+PMA_checkParameters(array('db'));
+
+/**
+ * Defines the url to return to in case of error in a sql statement
+ */
+$err_url = 'db_sql.php?' . PMA_generate_common_url($db);
+
+/**
+ * Settings for relations stuff
+ */
+require_once './libraries/relation.lib.php';
+$cfgRelation = PMA_getRelationsParam();
+
+/**
+ * Gets the list of the table in the current db and informations about these
+ * tables if possible
+ *
+ * @todo merge this speedup _optionaly_ into PMA_DBI_get_tables_full()
+ *
+// staybyte: speedup view on locked tables - 11 June 2001
+// Special speedup for newer MySQL Versions (in 4.0 format changed)
+if ($cfg['SkipLockedTables'] == true) {
+ $result = PMA_DBI_query('SHOW OPEN TABLES FROM ' . PMA_backquote($db) . ';');
+ // Blending out tables in use
+ if ($result != false && PMA_DBI_num_rows($result) > 0) {
+ while ($tmp = PMA_DBI_fetch_row($result)) {
+ // if in use memorize tablename
+ if (preg_match('@in_use=[1-9]+@i', $tmp[0])) {
+ $sot_cache[$tmp[0]] = true;
+ }
+ }
+ PMA_DBI_free_result($result);
+
+ if (isset($sot_cache)) {
+ $result = PMA_DBI_query('SHOW TABLES FROM ' . PMA_backquote($db) . ';', null, PMA_DBI_QUERY_STORE);
+ if ($result != false && PMA_DBI_num_rows($result) > 0) {
+ while ($tmp = PMA_DBI_fetch_row($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);
+ $tables[] = $sts_tmp;
+ } else { // table in use
+ $tables[] = array('Name' => $tmp[0]);
+ }
+ }
+ PMA_DBI_free_result($result);
+ $sot_ready = true;
+ }
+ }
+ unset($tmp, $result);
+ }
+}
+
+if (! isset($sot_ready)) {
+ $result = PMA_DBI_query('SHOW TABLE STATUS FROM ' . PMA_backquote($db) . ';');
+ if (PMA_DBI_num_rows($result) > 0) {
+ while ($sts_tmp = PMA_DBI_fetch_assoc($result)) {
+ $tables[] = $sts_tmp;
+ }
+ PMA_DBI_free_result($result);
+ unset($res);
+ }
+}
+ */
+
+/**
+ * If there is at least one table, displays the printer friendly view, else
+ * an error message
+ */
+$tables = PMA_DBI_get_tables_full($db);
+$num_tables = count($tables);
+
+echo '<br />';
+
+// 1. No table
+if ($num_tables == 0) {
+ echo $strNoTablesFound;
+}
+// 2. Shows table informations on mysql >= 3.23.03 - staybyte - 11 June 2001
+else {
+ ?>
+<table>
+<thead>
+<tr>
+ <th><?php echo $strTable; ?></th>
+ <th><?php echo $strRecords; ?></th>
+ <th><?php echo $strType; ?></th>
+ <?php
+ if ($cfg['ShowStats']) {
+ echo '<th>' . $strSize . '</th>';
+ }
+ ?>
+ <th><?php echo $strComments; ?></th>
+</tr>
+</thead>
+<tbody>
+ <?php
+ $sum_entries = $sum_size = 0;
+ $odd_row = true;
+ foreach ($tables as $sts_data) {
+ if (strtoupper($sts_data['ENGINE']) == 'MRG_MYISAM'
+ || strtoupper($sts_data['ENGINE']) == 'FEDERATED') {
+ $merged_size = true;
+ } else {
+ $merged_size = false;
+ }
+ $sum_entries += $sts_data['TABLE_ROWS'];
+ ?>
+<tr class="<?php echo $odd_row ? 'odd' : 'even'; ?>">
+ <th>
+ <?php echo htmlspecialchars($sts_data['TABLE_NAME']); ?>
+ </th>
+ <?php
+
+ if (isset($sts_data['TABLE_ROWS'])) {
+ ?>
+ <td align="right">
+ <?php
+ if ($merged_size) {
+ echo '<i>' . PMA_formatNumber($sts_data['TABLE_ROWS'], 0) . '</i>' . "\n";
+ } else {
+ echo PMA_formatNumber($sts_data['TABLE_ROWS'], 0) . "\n";
+ }
+ ?>
+ </td>
+ <td nowrap="nowrap">
+ <?php echo $sts_data['ENGINE']; ?>
+ </td>
+ <?php
+ if ($cfg['ShowStats']) {
+ $tblsize = $sts_data['Data_length'] + $sts_data['Index_length'];
+ $sum_size += $tblsize;
+ list($formated_size, $unit) = PMA_formatByteDown($tblsize, 3, 1);
+ ?>
+ <td align="right" nowrap="nowrap">
+ <?php echo $formated_size . ' ' . $unit; ?>
+ </td>
+ <?php
+ } // end if
+ } else {
+ ?>
+ <td colspan="3" align="center">
+ <?php echo $strInUse; ?>
+ </td>
+ <?php
+ }
+ ?>
+ <td>
+ <?php
+ if (! empty($sts_data['Comment'])) {
+ echo htmlspecialchars($sts_data['Comment']);
+ $needs_break = '<br />';
+ } else {
+ $needs_break = '';
+ }
+
+ if (! empty($sts_data['Create_time'])
+ || ! empty($sts_data['Update_time'])
+ || ! empty($sts_data['Check_time'])) {
+ echo $needs_break;
+ ?>
+ <table width="100%">
+ <?php
+
+ if (! empty($sts_data['Create_time'])) {
+ ?>
+ <tr>
+ <td align="right"><?php echo $strStatCreateTime . ': '; ?></td>
+ <td align="right"><?php echo PMA_localisedDate(strtotime($sts_data['Create_time'])); ?></td>
+ </tr>
+ <?php
+ }
+
+ if (! empty($sts_data['Update_time'])) {
+ ?>
+ <tr>
+ <td align="right"><?php echo $strStatUpdateTime . ': '; ?></td>
+ <td align="right"><?php echo PMA_localisedDate(strtotime($sts_data['Update_time'])); ?></td>
+ </tr>
+ <?php
+ }
+
+ if (! empty($sts_data['Check_time'])) {
+ ?>
+ <tr>
+ <td align="right"><?php echo $strStatCheckTime . ': '; ?></td>
+ <td align="right"><?php echo PMA_localisedDate(strtotime($sts_data['Check_time'])); ?></td>
+ </tr>
+ <?php
+ }
+ ?>
+ </table>
+ <?php
+ }
+ ?>
+ </td>
+</tr>
+ <?php
+ }
+ ?>
+<tr>
+ <th align="center">
+ <?php echo sprintf($strTables, PMA_formatNumber($num_tables, 0)); ?>
+ </th>
+ <th align="right" nowrap="nowrap">
+ <?php echo PMA_formatNumber($sum_entries, 0); ?>
+ </th>
+ <th align="center">
+ --
+ </th>
+ <?php
+ if ($cfg['ShowStats']) {
+ list($sum_formated, $unit) = PMA_formatByteDown($sum_size, 3, 1);
+ ?>
+ <th align="right" nowrap="nowrap">
+ <?php echo $sum_formated . ' ' . $unit; ?>
+ </th>
+ <?php
+ }
+ ?>
+ <th></th>
+</tr>
+</tbody>
+</table>
+ <?php
+}
+
+/**
+ * Displays the footer
+ */
+?>
+
+<script type="text/javascript">
+//<![CDATA[
+function printPage()
+{
+ // Do print the page
+ if (typeof(window.print) != 'undefined') {
+ window.print();
+ }
+}
+//]]>
+</script>
+<br /><br />
+
+<input type="button" class="print_ignore"
+ id="print" value="<?php echo $strPrint; ?>" onclick="printPage()" />
+
+<?php
+require_once './libraries/footer.inc.php';
+?>