本文整理汇总了PHP中PMA\libraries\Util::getListNavigator方法的典型用法代码示例。如果您正苦于以下问题:PHP Util::getListNavigator方法的具体用法?PHP Util::getListNavigator怎么用?PHP Util::getListNavigator使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PMA\libraries\Util
的用法示例。
在下文中一共展示了Util::getListNavigator方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: indexAction
/**
* Index action
*
* @return void
*/
public function indexAction()
{
// Add/Remove favorite tables using Ajax request.
if ($GLOBALS['is_ajax_request'] && !empty($_REQUEST['favorite_table'])) {
$this->addRemoveFavoriteTablesAction();
return;
}
// If there is an Ajax request for real row count of a table.
if ($GLOBALS['is_ajax_request'] && isset($_REQUEST['real_row_count']) && $_REQUEST['real_row_count'] == true) {
$this->handleRealRowCountRequestAction();
return;
}
// Drops/deletes/etc. multiple tables if required
if (!empty($_POST['submit_mult']) && isset($_POST['selected_tbl']) || isset($_POST['mult_btn'])) {
$this->multiSubmitAction();
}
$this->response->getHeader()->getScripts()->addFiles(array('db_structure.js', 'tbl_change.js', 'jquery/jquery-ui-timepicker-addon.js'));
$this->_url_query .= '&goto=db_structure.php';
// Gets the database structure
$sub_part = '_structure';
list($tables, $num_tables, $total_num_tables, , $is_show_stats, $db_is_system_schema, , , $pos) = Util::getDbInfo($GLOBALS['db'], $sub_part);
$this->_tables = $tables;
// updating $tables seems enough for #11376, but updating other
// variables too in case they may cause some other problem.
$this->_num_tables = $num_tables;
$this->_pos = $pos;
$this->_db_is_system_schema = $db_is_system_schema;
$this->_total_num_tables = $total_num_tables;
$this->_is_show_stats = $is_show_stats;
include_once 'libraries/replication.inc.php';
PageSettings::showGroup('DbStructure');
// 1. No tables
if ($this->_num_tables == 0) {
$this->response->addHTML(Message::notice(__('No tables found in database.')));
if (empty($db_is_system_schema)) {
$this->response->addHTML(PMA_getHtmlForCreateTable($this->db));
}
return;
}
// else
// 2. Shows table information
/**
* Displays the tables list
*/
$this->response->addHTML('<div id="tableslistcontainer">');
$_url_params = array('pos' => $this->_pos, 'db' => $this->db);
// Add the sort options if they exists
if (isset($_REQUEST['sort'])) {
$_url_params['sort'] = $_REQUEST['sort'];
}
if (isset($_REQUEST['sort_order'])) {
$_url_params['sort_order'] = $_REQUEST['sort_order'];
}
$this->response->addHTML(Util::getListNavigator($this->_total_num_tables, $this->_pos, $_url_params, 'db_structure.php', 'frame_content', $GLOBALS['cfg']['MaxTableList']));
$this->displayTableList();
// display again the table list navigator
$this->response->addHTML(Util::getListNavigator($this->_total_num_tables, $this->_pos, $_url_params, 'db_structure.php', 'frame_content', $GLOBALS['cfg']['MaxTableList']));
$this->response->addHTML('</div><hr />');
/**
* Work on the database
*/
/* DATABASE WORK */
/* Printable view of a table */
$this->response->addHTML(Template::get('database/structure/print_view_data_dictionary_link')->render(array('url_query' => $this->_url_query)));
if (empty($this->_db_is_system_schema)) {
$this->response->addHTML(PMA_getHtmlForCreateTable($this->db));
}
}
示例2: _getHtmlForDatabases
/**
* Returns the html for Database List
*
* @param array $replication_types replication types
*
* @return string
*/
private function _getHtmlForDatabases($replication_types)
{
$html = '<div id="tableslistcontainer">';
$first_database = reset($this->_databases);
// table col order
$column_order = $this->_getColumnOrder();
$_url_params = array('pos' => $this->_pos, 'dbstats' => $this->_dbstats, 'sort_by' => $this->_sort_by, 'sort_order' => $this->_sort_order);
$html .= Util::getListNavigator($this->_database_count, $this->_pos, $_url_params, 'server_databases.php', 'frame_content', $GLOBALS['cfg']['MaxDbList']);
$_url_params['pos'] = $this->_pos;
$html .= '<form class="ajax" action="server_databases.php" ';
$html .= 'method="post" name="dbStatsForm" id="dbStatsForm">' . "\n";
$html .= PMA_URL_getHiddenInputs($_url_params);
$_url_params['sort_by'] = 'SCHEMA_NAME';
$_url_params['sort_order'] = $this->_sort_by == 'SCHEMA_NAME' && $this->_sort_order == 'asc' ? 'desc' : 'asc';
// calculate aggregate stats to display in footer
foreach ($this->_databases as $current) {
foreach ($column_order as $stat_name => $stat) {
if (array_key_exists($stat_name, $current) && is_numeric($stat['footer'])) {
$column_order[$stat_name]['footer'] += $current[$stat_name];
}
}
}
// database table
$html .= '<table id="tabledatabases" class="data">' . "\n";
$html .= $this->_getHtmlForTableHeader($_url_params, $column_order, $first_database);
$html .= $this->_getHtmlForTableBody($column_order, $replication_types);
$html .= $this->_getHtmlForTableFooter($column_order, $first_database);
$html .= '</table>' . "\n";
$html .= $this->_getHtmlForTableFooterButtons();
if (empty($this->_dbstats)) {
//we should put notice above database list
$html .= $this->_getHtmlForNoticeEnableStatistics();
}
$html .= '</form>';
$html .= '</div>';
return $html;
}
示例3: _getPageSelector
/**
* Generates the HTML code for displaying the list pagination
*
* @param Node $node The node for whose children the page
* selector will be created
*
* @return string
*/
private function _getPageSelector($node)
{
$retval = '';
if ($node === $this->_tree) {
$retval .= Util::getListNavigator($this->_tree->getPresence('databases', $this->_searchClause), $this->_pos, array('server' => $GLOBALS['server']), 'navigation.php', 'frame_navigation', $GLOBALS['cfg']['FirstLevelNavigationItems'], 'pos', array('dbselector'));
} else {
if ($node->type == Node::CONTAINER && !$node->is_group) {
$paths = $node->getPaths();
$level = isset($paths['aPath_clean'][4]) ? 3 : 2;
$_url_params = array('aPath' => $paths['aPath'], 'vPath' => $paths['vPath'], 'pos' => $this->_pos, 'server' => $GLOBALS['server'], 'pos2_name' => $paths['aPath_clean'][2]);
if ($level == 3) {
$pos = $node->pos3;
$_url_params['pos2_value'] = $node->pos2;
$_url_params['pos3_name'] = $paths['aPath_clean'][4];
} else {
$pos = $node->pos2;
}
$num = $node->realParent()->getPresence($node->real_name, $this->_searchClause2);
$retval .= Util::getListNavigator($num, $pos, $_url_params, 'navigation.php', 'frame_navigation', $GLOBALS['cfg']['MaxNavigationItems'], 'pos' . $level . '_value');
}
}
return $retval;
}
示例4: indexAction
/**
* Index action
*
* @return void
*/
public function indexAction()
{
// Add/Remove favorite tables using Ajax request.
if ($GLOBALS['is_ajax_request'] && !empty($_REQUEST['favorite_table'])) {
$this->addRemoveFavoriteTablesAction();
return;
}
$this->response->getHeader()->getScripts()->addFiles(array('db_structure.js', 'tbl_change.js', 'jquery/jquery-ui-timepicker-addon.js'));
// Drops/deletes/etc. multiple tables if required
if (!empty($_POST['submit_mult']) && isset($_POST['selected_tbl']) || isset($_POST['mult_btn'])) {
$action = 'db_structure.php';
$err_url = 'db_structure.php' . PMA_URL_getCommon(array('db' => $this->db));
// see bug #2794840; in this case, code path is:
// db_structure.php -> libraries/mult_submits.inc.php -> sql.php
// -> db_structure.php and if we got an error on the multi submit,
// we must display it here and not call again mult_submits.inc.php
if (!isset($_POST['error']) || false === $_POST['error']) {
include 'libraries/mult_submits.inc.php';
}
if (empty($_POST['message'])) {
$_POST['message'] = Message::success();
}
}
$this->_url_query .= '&goto=db_structure.php';
// Gets the database structure
$sub_part = '_structure';
list($tables, $num_tables, $total_num_tables, , $is_show_stats, $db_is_system_schema, $tooltip_truename, $tooltip_aliasname, $pos) = Util::getDbInfo($GLOBALS['db'], isset($sub_part) ? $sub_part : '');
$this->_tables = $tables;
// updating $tables seems enough for #11376, but updating other
// variables too in case they may cause some other problem.
$this->_num_tables = $num_tables;
$this->_pos = $pos;
$this->_db_is_system_schema = $db_is_system_schema;
$this->_total_num_tables = $total_num_tables;
$this->_is_show_stats = $is_show_stats;
// If there is an Ajax request for real row count of a table.
if ($GLOBALS['is_ajax_request'] && isset($_REQUEST['real_row_count']) && $_REQUEST['real_row_count'] == true) {
$this->handleRealRowCountRequestAction();
return;
}
include_once 'libraries/replication.inc.php';
PageSettings::showGroup('DbStructure');
$db_collation = PMA_getDbCollation($this->db);
$titles = Util::buildActionTitles();
// 1. No tables
if ($this->_num_tables == 0) {
$this->response->addHTML(Message::notice(__('No tables found in database.')));
if (empty($db_is_system_schema)) {
$this->response->addHTML(PMA_getHtmlForCreateTable($this->db));
}
return;
}
// else
// 2. Shows table information
/**
* Displays the tables list
*/
$this->response->addHTML('<div id="tableslistcontainer">');
$_url_params = array('pos' => $this->_pos, 'db' => $this->db);
// Add the sort options if they exists
if (isset($_REQUEST['sort'])) {
$_url_params['sort'] = $_REQUEST['sort'];
}
if (isset($_REQUEST['sort_order'])) {
$_url_params['sort_order'] = $_REQUEST['sort_order'];
}
$this->response->addHTML(Util::getListNavigator($this->_total_num_tables, $this->_pos, $_url_params, 'db_structure.php', 'frame_content', $GLOBALS['cfg']['MaxTableList']));
// table form
$this->response->addHTML(Template::get('database/structure/table_header')->render(array('db' => $this->db, 'db_is_system_schema' => $this->_db_is_system_schema, 'replication' => $GLOBALS['replication_info']['slave']['status'])));
$i = $sum_entries = 0;
$overhead_check = '';
$create_time_all = '';
$update_time_all = '';
$check_time_all = '';
$num_columns = $GLOBALS['cfg']['PropertiesNumColumns'] > 1 ? ceil($this->_num_tables / $GLOBALS['cfg']['PropertiesNumColumns']) + 1 : 0;
$row_count = 0;
$sum_size = (double) 0;
$overhead_size = (double) 0;
$hidden_fields = array();
$odd_row = true;
$overall_approx_rows = false;
// Instance of RecentFavoriteTable class.
$fav_instance = RecentFavoriteTable::getInstance('favorite');
foreach ($this->_tables as $keyname => $current_table) {
// Get valid statistics whatever is the table type
$drop_query = '';
$drop_message = '';
$overhead = '';
$table_is_view = false;
$table_encoded = urlencode($current_table['TABLE_NAME']);
// Sets parameters for links
$tbl_url_query = $this->_url_query . '&table=' . $table_encoded;
// do not list the previous table's size info for a view
list($current_table, $formatted_size, $unit, $formatted_overhead, $overhead_unit, $overhead_size, $table_is_view, $sum_size) = $this->getStuffForEngineTypeTable($current_table, $sum_size, $overhead_size);
$curTable = $this->dbi->getTable($this->db, $current_table['TABLE_NAME']);
//.........这里部分代码省略.........