本文整理汇总了PHP中PMA_Util::unsupportedDatatypes方法的典型用法代码示例。如果您正苦于以下问题:PHP PMA_Util::unsupportedDatatypes方法的具体用法?PHP PMA_Util::unsupportedDatatypes怎么用?PHP PMA_Util::unsupportedDatatypes使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PMA_Util
的用法示例。
在下文中一共展示了PMA_Util::unsupportedDatatypes方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testNotSupportedDataTypes
function testNotSupportedDataTypes()
{
$no_support_types = array();
$this->assertEquals(
$no_support_types, PMA_Util::unsupportedDatatypes()
);
}
示例2: PMA_RTN_getExecuteForm
/**
* Creates the HTML code that shows the routine execution dialog.
*
* @param array $routine Data for the routine returned by
* PMA_RTN_getDataFromName()
*
* @return string HTML code for the routine execution dialog.
*/
function PMA_RTN_getExecuteForm($routine)
{
global $db, $cfg;
// Escape special characters
$routine['item_name'] = htmlentities($routine['item_name'], ENT_QUOTES);
for ($i = 0; $i < $routine['item_num_params']; $i++) {
$routine['item_param_name'][$i] = htmlentities($routine['item_param_name'][$i], ENT_QUOTES);
}
// Create the output
$retval = "";
$retval .= "<!-- START ROUTINE EXECUTE FORM -->\n\n";
$retval .= "<form action='db_routines.php' method='post' class='rte_form'>\n";
$retval .= "<input type='hidden' name='item_name'\n";
$retval .= " value='{$routine['item_name']}' />\n";
$retval .= "<input type='hidden' name='item_type'\n";
$retval .= " value='{$routine['item_type']}' />\n";
$retval .= PMA_generate_common_hidden_inputs($db) . "\n";
$retval .= "<fieldset>\n";
if ($GLOBALS['is_ajax_request'] != true) {
$retval .= "<legend>{$routine['item_name']}</legend>\n";
$retval .= "<table class='rte_table'>\n";
$retval .= "<caption class='tblHeaders'>\n";
$retval .= __('Routine parameters');
$retval .= "</caption>\n";
} else {
$retval .= "<legend>" . __('Routine parameters') . "</legend>\n";
$retval .= "<table class='rte_table' style='width: 100%;'>\n";
}
$retval .= "<tr>\n";
$retval .= "<th>" . __('Name') . "</th>\n";
$retval .= "<th>" . __('Type') . "</th>\n";
if ($cfg['ShowFunctionFields']) {
$retval .= "<th>" . __('Function') . "</th>\n";
}
$retval .= "<th>" . __('Value') . "</th>\n";
$retval .= "</tr>\n";
// Get a list of data types that are not yet supported.
$no_support_types = PMA_Util::unsupportedDatatypes();
for ($i = 0; $i < $routine['item_num_params']; $i++) {
// Each parameter
if ($routine['item_type'] == 'PROCEDURE' && $routine['item_param_dir'][$i] == 'OUT') {
continue;
}
$rowclass = $i % 2 == 0 ? 'even' : 'odd';
$retval .= "\n<tr class='{$rowclass}'>\n";
$retval .= "<td>{$routine['item_param_name'][$i]}</td>\n";
$retval .= "<td>{$routine['item_param_type'][$i]}</td>\n";
if ($cfg['ShowFunctionFields']) {
$retval .= "<td>\n";
if (stristr($routine['item_param_type'][$i], 'enum') || stristr($routine['item_param_type'][$i], 'set') || in_array(strtolower($routine['item_param_type'][$i]), $no_support_types)) {
$retval .= "--\n";
} else {
$field = array('True_Type' => strtolower($routine['item_param_type'][$i]), 'Type' => '', 'Key' => '', 'Field' => '', 'Default' => '', 'first_timestamp' => false);
$retval .= "<select name='funcs[{$routine['item_param_name'][$i]}]'>";
$retval .= PMA_Util::getFunctionsForField($field, false);
$retval .= "</select>";
}
$retval .= "</td>\n";
}
// Append a class to date/time fields so that
// jQuery can attach a datepicker to them
$class = '';
if ($routine['item_param_type'][$i] == 'DATETIME' || $routine['item_param_type'][$i] == 'TIMESTAMP') {
$class = 'datetimefield';
} else {
if ($routine['item_param_type'][$i] == 'DATE') {
$class = 'datefield';
}
}
$retval .= "<td class='nowrap'>\n";
if (in_array($routine['item_param_type'][$i], array('ENUM', 'SET'))) {
$tokens = PMA_SQP_parse($routine['item_param_length'][$i]);
if ($routine['item_param_type'][$i] == 'ENUM') {
$input_type = 'radio';
} else {
$input_type = 'checkbox';
}
for ($j = 0; $j < $tokens['len']; $j++) {
if ($tokens[$j]['type'] != 'punct_listsep') {
$tokens[$j]['data'] = htmlentities(PMA_Util::unquote($tokens[$j]['data']), ENT_QUOTES);
$retval .= "<input name='params[{$routine['item_param_name'][$i]}][]' " . "value='{$tokens[$j]['data']}' type='{$input_type}' />" . "{$tokens[$j]['data']}<br />\n";
}
}
} else {
if (in_array(strtolower($routine['item_param_type'][$i]), $no_support_types)) {
$retval .= "\n";
} else {
$retval .= "<input class='{$class}' type='text' name='params[{$routine['item_param_name'][$i]}]' />\n";
}
}
$retval .= "</td>\n";
$retval .= "</tr>\n";
//.........这里部分代码省略.........
示例3: PMA_getHtmlForInsertEditFormColumn
/**
* Function to get html for each insert/edit column
*
* @param array $table_columns table columns
* @param int $column_number column index in table_columns
* @param array $comments_map comments map
* @param bool $timestamp_seen whether timestamp seen
* @param array $current_result current result
* @param string $chg_evt_handler javascript change event handler
* @param string $jsvkey javascript validation key
* @param string $vkey validation key
* @param bool $insert_mode whether insert mode
* @param array $current_row current row
* @param bool $odd_row whether odd row
* @param int &$o_rows row offset
* @param int &$tabindex tab index
* @param int $columns_cnt columns count
* @param bool $is_upload whether upload
* @param int $tabindex_for_function tab index offset for function
* @param array $foreigners foreigners
* @param int $tabindex_for_null tab index offset for null
* @param int $tabindex_for_value tab index offset for value
* @param string $table table
* @param string $db database
* @param int $row_id row id
* @param array $titles titles
* @param int $biggest_max_file_size biggest max file size
* @param string $default_char_editing default char editing mode which is stored
* in the config.inc.php script
* @param string $text_dir text direction
* @param array $repopulate the data to be repopulated
* @param array $column_mime the mime information of column
* @param string $where_clause the where clause
*
* @return string
*/
function PMA_getHtmlForInsertEditFormColumn($table_columns, $column_number, $comments_map, $timestamp_seen, $current_result, $chg_evt_handler, $jsvkey, $vkey, $insert_mode, $current_row, $odd_row, &$o_rows, &$tabindex, $columns_cnt, $is_upload, $tabindex_for_function, $foreigners, $tabindex_for_null, $tabindex_for_value, $table, $db, $row_id, $titles, $biggest_max_file_size, $default_char_editing, $text_dir, $repopulate, $column_mime, $where_clause)
{
$column = $table_columns[$column_number];
if (!isset($column['processed'])) {
$column = PMA_analyzeTableColumnsArray($column, $comments_map, $timestamp_seen);
}
$as_is = false;
if (!empty($repopulate) && !empty($current_row)) {
$current_row[$column['Field']] = $repopulate[$column['Field_md5']];
$as_is = true;
}
$extracted_columnspec = PMA_Util::extractColumnSpec($column['Type']);
if (-1 === $column['len']) {
$column['len'] = $GLOBALS['dbi']->fieldLen($current_result, $column_number);
// length is unknown for geometry fields,
// make enough space to edit very simple WKTs
if (-1 === $column['len']) {
$column['len'] = 30;
}
}
//Call validation when the form submitted...
$onChangeClause = $chg_evt_handler . "=\"return verificationsAfterFieldChange('" . PMA_escapeJsString($column['Field_md5']) . "', '" . PMA_escapeJsString($jsvkey) . "','" . $column['pma_type'] . "')\"";
// Use an MD5 as an array index to avoid having special characters
// in the name attribute (see bug #1746964 )
$column_name_appendix = $vkey . '[' . $column['Field_md5'] . ']';
if ($column['Type'] === 'datetime' && !isset($column['Default']) && !is_null($column['Default']) && $insert_mode) {
$column['Default'] = date('Y-m-d H:i:s', time());
}
$html_output = PMA_getHtmlForFunctionOption($odd_row, $column, $column_name_appendix);
if ($GLOBALS['cfg']['ShowFieldTypesInDataEditView']) {
$html_output .= PMA_getHtmlForInsertEditColumnType($column);
}
//End if
// Get a list of GIS data types.
$gis_data_types = PMA_Util::getGISDatatypes();
// Prepares the field value
$real_null_value = false;
$special_chars_encoded = '';
if (!empty($current_row)) {
// (we are editing)
list($real_null_value, $special_chars_encoded, $special_chars, $data, $backup_field) = PMA_getSpecialCharsAndBackupFieldForExistingRow($current_row, $column, $extracted_columnspec, $real_null_value, $gis_data_types, $column_name_appendix, $as_is);
} else {
// (we are inserting)
// display default values
$tmp = $column;
if (isset($repopulate[$column['Field_md5']])) {
$tmp['Default'] = $repopulate[$column['Field_md5']];
}
list($real_null_value, $data, $special_chars, $backup_field, $special_chars_encoded) = PMA_getSpecialCharsAndBackupFieldForInsertingMode($tmp, $real_null_value);
unset($tmp);
}
$idindex = $o_rows * $columns_cnt + $column_number + 1;
$tabindex = $idindex;
// Get a list of data types that are not yet supported.
$no_support_types = PMA_Util::unsupportedDatatypes();
// The function column
// -------------------
if ($GLOBALS['cfg']['ShowFunctionFields']) {
$html_output .= PMA_getFunctionColumn($column, $is_upload, $column_name_appendix, $onChangeClause, $no_support_types, $tabindex_for_function, $tabindex, $idindex, $insert_mode);
}
// The null column
// ---------------
$foreignData = PMA_getForeignData($foreigners, $column['Field'], false, '', '');
$html_output .= PMA_getNullColumn($column, $column_name_appendix, $real_null_value, $tabindex, $tabindex_for_null, $idindex, $vkey, $foreigners, $foreignData);
//.........这里部分代码省略.........
示例4: PMA_getHtmlForInsertEditFormColumn
/**
* Function to get html for each insert/edit column
*
* @param array $table_columns table columns
* @param int $i row counter
* @param array $column column
* @param array $comments_map comments map
* @param bool $timestamp_seen whether timestamp seen
* @param array $current_result current result
* @param string $chg_evt_handler javascript change event handler
* @param string $jsvkey javascript validation key
* @param string $vkey validation key
* @param bool $insert_mode whether insert mode
* @param array $current_row current row
* @param bool $odd_row whether odd row
* @param int &$o_rows row offset
* @param int &$tabindex tab index
* @param int $columns_cnt columns count
* @param bool $is_upload whether upload
* @param int $tabindex_for_function tab index offset for function
* @param array $foreigners foreigners
* @param int $tabindex_for_null tab index offset for null
* @param int $tabindex_for_value tab index offset for value
* @param string $table table
* @param string $db database
* @param int $row_id row id
* @param array $titles titles
* @param int $biggest_max_file_size biggest max file size
* @param string $default_char_editing default char editing mode which is stroe
* in the config.inc.php script
* @param string $text_dir text direction
*
* @return string
*/
function PMA_getHtmlForInsertEditFormColumn($table_columns, $i, $column, $comments_map, $timestamp_seen, $current_result, $chg_evt_handler, $jsvkey, $vkey, $insert_mode, $current_row, $odd_row, &$o_rows, &$tabindex, $columns_cnt, $is_upload, $tabindex_for_function, $foreigners, $tabindex_for_null, $tabindex_for_value, $table, $db, $row_id, $titles, $biggest_max_file_size, $default_char_editing, $text_dir)
{
if (!isset($table_columns[$i]['processed'])) {
$column = $table_columns[$i];
$column = PMA_analyzeTableColumnsArray($column, $comments_map, $timestamp_seen);
}
$extracted_columnspec = PMA_Util::extractColumnSpec($column['Type']);
if (-1 === $column['len']) {
$column['len'] = $GLOBALS['dbi']->fieldLen($current_result, $i);
// length is unknown for geometry fields,
// make enough space to edit very simple WKTs
if (-1 === $column['len']) {
$column['len'] = 30;
}
}
//Call validation when the form submitted...
$unnullify_trigger = $chg_evt_handler . "=\"return verificationsAfterFieldChange('" . PMA_escapeJsString($column['Field_md5']) . "', '" . PMA_escapeJsString($jsvkey) . "','" . $column['pma_type'] . "')\"";
// Use an MD5 as an array index to avoid having special characters
// in the name atttibute (see bug #1746964 )
$column_name_appendix = $vkey . '[' . $column['Field_md5'] . ']';
if ($column['Type'] == 'datetime' && !isset($column['Default']) && !is_null($column['Default']) && ($insert_mode || !isset($current_row[$column['Field']]))) {
// INSERT case or
// UPDATE case with an NULL value
$current_row[$column['Field']] = date('Y-m-d H:i:s', time());
}
$html_output = PMA_getHtmlForFunctionOption($odd_row, $column, $column_name_appendix);
if ($GLOBALS['cfg']['ShowFieldTypesInDataEditView']) {
$html_output .= PMA_getHtmlForInsertEditColumnType($column);
}
//End if
// Get a list of GIS data types.
$gis_data_types = PMA_Util::getGISDatatypes();
// Prepares the field value
$real_null_value = false;
$special_chars_encoded = '';
if (isset($current_row)) {
// (we are editing)
list($real_null_value, $special_chars_encoded, $special_chars, $data, $backup_field) = PMA_getSpecialCharsAndBackupFieldForExistingRow($current_row, $column, $extracted_columnspec, $real_null_value, $gis_data_types, $column_name_appendix);
} else {
// (we are inserting)
// display default values
list($real_null_value, $data, $special_chars, $backup_field, $special_chars_encoded) = PMA_getSpecialCharsAndBackupFieldForInsertingMode($column, $real_null_value);
}
$idindex = $o_rows * $columns_cnt + $i + 1;
$tabindex = $idindex;
// Get a list of data types that are not yet supported.
$no_support_types = PMA_Util::unsupportedDatatypes();
// The function column
// -------------------
if ($GLOBALS['cfg']['ShowFunctionFields']) {
$html_output .= PMA_getFunctionColumn($column, $is_upload, $column_name_appendix, $unnullify_trigger, $no_support_types, $tabindex_for_function, $tabindex, $idindex, $insert_mode);
}
// The null column
// ---------------
$foreignData = PMA_getForeignData($foreigners, $column['Field'], false, '', '');
$html_output .= PMA_getNullColumn($column, $column_name_appendix, $real_null_value, $tabindex, $tabindex_for_null, $idindex, $vkey, $foreigners, $foreignData);
// The value column (depends on type)
// ----------------
// See bug #1667887 for the reason why we don't use the maxlength
// HTML attribute
$html_output .= ' <td>' . "\n";
// Will be used by js/tbl_change.js to set the default value
// for the "Continue insertion" feature
$html_output .= '<span class="default_value hide">' . $special_chars . '</span>';
$html_output .= PMA_getValueColumn($column, $backup_field, $column_name_appendix, $unnullify_trigger, $tabindex, $tabindex_for_value, $idindex, $data, $special_chars, $foreignData, $odd_row, array($table, $db), $row_id, $titles, $text_dir, $special_chars_encoded, $vkey, $is_upload, $biggest_max_file_size, $default_char_editing, $no_support_types, $gis_data_types, $extracted_columnspec);
$html_output .= '</td>' . '</tr>';
//.........这里部分代码省略.........
示例5: PMA_getSpecialCharsAndBackupFieldForExistingRow
= PMA_getSpecialCharsAndBackupFieldForExistingRow(
$current_row, $column, $extracted_columnspec,
$real_null_value, $gis_data_types, $column_name_appendix
);
} else {
// (we are inserting)
// display default values
list($real_null_value, $data, $special_chars, $backup_field, $special_chars_encoded)
= PMA_getSpecialCharsAndBackupFieldForInsertingMode($column, $real_null_value);
}
$idindex = ($o_rows * $columns_cnt) + $i + 1;
$tabindex = $idindex;
// Get a list of data types that are not yet supported.
$no_support_types = PMA_Util::unsupportedDatatypes();
// The function column
// -------------------
if ($cfg['ShowFunctionFields']) {
$html_output .= PMA_getFunctionColumn(
$column, $is_upload, $column_name_appendix,
$unnullify_trigger, $no_support_types, $tabindex_for_function,
$tabindex, $idindex, $insert_mode
);
}
// The null column
// ---------------
$foreignData = PMA_getForeignData(
$foreigners, $column['Field'], false, '', ''