$reread_info = false; $errors = array(); $table_alters = array(); /** * Updates table comment, type and options if required */ if (isset($_REQUEST['submitoptions'])) { $message = ''; if (isset($_REQUEST['new_name'])) { if ($pma_table->rename($_REQUEST['new_name'])) { $message .= $pma_table->getLastMessage(); $GLOBALS['table'] = $pma_table->getName(); $reread_info = true; $reload = true; } else { $errors[] = $pma_table->getLastError(); $message .= $pma_table->getLastError(); } } if (isset($_REQUEST['comment']) && urldecode($_REQUEST['prev_comment']) !== $_REQUEST['comment']) { $table_alters[] = 'COMMENT = \'' . PMA_sqlAddslashes($_REQUEST['comment']) . '\''; } if (!empty($_REQUEST['new_tbl_type']) && strtolower($_REQUEST['new_tbl_type']) !== strtolower($tbl_type)) { $table_alters[] = PMA_ENGINE_KEYWORD . ' = ' . $_REQUEST['new_tbl_type']; $tbl_type = $_REQUEST['new_tbl_type']; } if (!empty($_REQUEST['tbl_collation']) && $_REQUEST['tbl_collation'] !== $tbl_collation) { $table_alters[] = 'DEFAULT ' . PMA_generateCharsetQueryPart($_REQUEST['tbl_collation']); } $l_tbl_type = strtolower($tbl_type); if (($l_tbl_type === 'myisam' || $l_tbl_type === 'isam') && isset($_REQUEST['new_pack_keys']) && $_REQUEST['new_pack_keys'] != (string) $pack_keys) {
/** * Updates if required */ if (isset($_REQUEST['submitoptions'])) { $_message = ''; $warning_messages = array(); if (isset($_REQUEST['new_name'])) { if ($pma_table->rename($_REQUEST['new_name'], null, $is_view = true)) { $_message .= $pma_table->getLastMessage(); $result = true; $GLOBALS['table'] = $pma_table->getName(); $reread_info = true; $reload = true; } else { $_message .= $pma_table->getLastError(); $result = false; } } } if (isset($result)) { // set to success by default, because result set could be empty // (for example, a table rename) $_type = 'success'; if (empty($_message)) { $_message = $result ? __('Your SQL query has been executed successfully') : __('Error'); // $result should exist, regardless of $_message $_type = $result ? 'success' : 'error'; } if (! empty($warning_messages)) {
/** * Test getLastError & getLastMessage * * @return void */ public function testGetLastErrorAndMessage() { $table = new PMA_Table('table1', 'pma_test'); $table->errors[] = "error1"; $table->errors[] = "error2"; $table->errors[] = "error3"; $table->messages[] = "messages1"; $table->messages[] = "messages2"; $table->messages[] = "messages3"; $this->assertEquals("error3", $table->getLastError()); $this->assertEquals("messages3", $table->getLastMessage()); }