⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 database_interface.lib.php

📁 phpMyAdmin图形界面化操作,我已经配置好了,只要把解要压缩后的文件放到站点下就可以用了
💻 PHP
📖 第 1 页 / 共 4 页
字号:
            $sql .= "\n" . ' WHERE ' . implode(' AND ', $sql_wheres);        }        $columns = PMA_DBI_fetch_result($sql, $array_keys, null, $link);        unset($sql_wheres, $sql);    } else {        if (null === $database) {            foreach ($GLOBALS['pma']->databases as $database) {                $columns[$database] = PMA_DBI_get_columns_full($database, null,                    null, $link);            }            return $columns;        } elseif (null === $table) {            $tables = PMA_DBI_get_tables($database);            foreach ($tables as $table) {                $columns[$table] = PMA_DBI_get_columns_full(                    $database, $table, null, $link);            }            return $columns;        }        $sql = 'SHOW FULL COLUMNS FROM '            . PMA_backquote($database) . '.' . PMA_backquote($table);        if (null !== $column) {            $sql .= " LIKE '" . $column . "'";        }        $columns = PMA_DBI_fetch_result($sql, 'Field', null, $link);        $ordinal_position = 1;        foreach ($columns as $column_name => $each_column) {            // MySQL forward compatibility            // so pma could use this array as if every server is of version >5.0            $columns[$column_name]['COLUMN_NAME']                 =& $columns[$column_name]['Field'];            $columns[$column_name]['COLUMN_TYPE']                 =& $columns[$column_name]['Type'];            $columns[$column_name]['COLLATION_NAME']              =& $columns[$column_name]['Collation'];            $columns[$column_name]['IS_NULLABLE']                 =& $columns[$column_name]['Null'];            $columns[$column_name]['COLUMN_KEY']                  =& $columns[$column_name]['Key'];            $columns[$column_name]['COLUMN_DEFAULT']              =& $columns[$column_name]['Default'];            $columns[$column_name]['EXTRA']                       =& $columns[$column_name]['Extra'];            $columns[$column_name]['PRIVILEGES']                  =& $columns[$column_name]['Privileges'];            $columns[$column_name]['COLUMN_COMMENT']              =& $columns[$column_name]['Comment'];            $columns[$column_name]['TABLE_CATALOG']               = null;            $columns[$column_name]['TABLE_SCHEMA']                = $database;            $columns[$column_name]['TABLE_NAME']                  = $table;            $columns[$column_name]['ORDINAL_POSITION']            = $ordinal_position;            $columns[$column_name]['DATA_TYPE']                   =                substr($columns[$column_name]['COLUMN_TYPE'], 0,                    strpos($columns[$column_name]['COLUMN_TYPE'], '('));            /**             * @todo guess CHARACTER_MAXIMUM_LENGTH from COLUMN_TYPE             */            $columns[$column_name]['CHARACTER_MAXIMUM_LENGTH']    = null;            /**             * @todo guess CHARACTER_OCTET_LENGTH from CHARACTER_MAXIMUM_LENGTH             */            $columns[$column_name]['CHARACTER_OCTET_LENGTH']      = null;            $columns[$column_name]['NUMERIC_PRECISION']           = null;            $columns[$column_name]['NUMERIC_SCALE']               = null;            $columns[$column_name]['CHARACTER_SET_NAME']          =                substr($columns[$column_name]['COLLATION_NAME'], 0,                    strpos($columns[$column_name]['COLLATION_NAME'], '_'));            $ordinal_position++;        }        if (null !== $column) {            reset($columns);            $columns = current($columns);        }    }    return $columns;}/** * @todo should only return columns names, for more info use PMA_DBI_get_columns_full() * * @deprecated by PMA_DBI_get_columns() or PMA_DBI_get_columns_full() * @param   string  $database   name of database * @param   string  $table      name of table to retrieve columns from * @param   mixed   $link       mysql link resource * @return  array   column info */function PMA_DBI_get_fields($database, $table, $link = null){    // here we use a try_query because when coming from    // tbl_create + tbl_properties.inc.php, the table does not exist    $fields = PMA_DBI_fetch_result(        'SHOW FULL COLUMNS        FROM ' . PMA_backquote($database) . '.' . PMA_backquote($table),        null, null, $link);    if (! is_array($fields) || count($fields) < 1) {        return false;    }    return $fields;}/** * array PMA_DBI_get_columns(string $database, string $table, bool $full = false, mysql db link $link = null) * * @param   string  $database   name of database * @param   string  $table      name of table to retrieve columns from * @param   boolean $full       whether to return full info or only column names * @param   mixed   $link       mysql link resource * @return  array   column names */function PMA_DBI_get_columns($database, $table, $full = false, $link = null){    $fields = PMA_DBI_fetch_result(        'SHOW ' . ($full ? 'FULL' : '') . ' COLUMNS        FROM ' . PMA_backquote($database) . '.' . PMA_backquote($table),        'Field', ($full ? null : 'Field'), $link);    if (! is_array($fields) || count($fields) < 1) {        return false;    }    return $fields;}/** * returns value of given mysql server variable * * @param   string  $var    mysql server variable name * @param   int     $type   PMA_DBI_GETVAR_SESSION|PMA_DBI_GETVAR_GLOBAL * @param   mixed   $link   mysql link resource|object * @return  mixed   value for mysql server variable */function PMA_DBI_get_variable($var, $type = PMA_DBI_GETVAR_SESSION, $link = null){    if ($link === null) {        if (isset($GLOBALS['userlink'])) {            $link = $GLOBALS['userlink'];        } else {            return false;        }    }    switch ($type) {        case PMA_DBI_GETVAR_SESSION:            $modifier = ' SESSION';            break;        case PMA_DBI_GETVAR_GLOBAL:            $modifier = ' GLOBAL';            break;        default:            $modifier = '';    }    return PMA_DBI_fetch_value(        'SHOW' . $modifier . ' VARIABLES LIKE \'' . $var . '\';', 0, 1, $link);}/** * @uses    ./libraries/charset_conversion.lib.php * @uses    PMA_DBI_QUERY_STORE * @uses    PMA_MYSQL_INT_VERSION to set it * @uses    PMA_MYSQL_STR_VERSION to set it * @uses    $_SESSION['PMA_MYSQL_INT_VERSION'] for caching * @uses    $_SESSION['PMA_MYSQL_STR_VERSION'] for caching * @uses    PMA_DBI_GETVAR_SESSION * @uses    PMA_DBI_fetch_value() * @uses    PMA_DBI_query() * @uses    PMA_DBI_get_variable() * @uses    $GLOBALS['collation_connection'] * @uses    $GLOBALS['available_languages'] * @uses    $GLOBALS['mysql_charset_map'] * @uses    $GLOBALS['charset'] * @uses    $GLOBALS['lang'] * @uses    $GLOBALS['server'] * @uses    $GLOBALS['cfg']['Lang'] * @uses    defined() * @uses    explode() * @uses    sprintf() * @uses    intval() * @uses    define() * @uses    defined() * @uses    substr() * @uses    count() * @param   mixed   $link   mysql link resource|object * @param   boolean $is_controluser */function PMA_DBI_postConnect($link, $is_controluser = false){    if (! defined('PMA_MYSQL_INT_VERSION')) {        if (PMA_cacheExists('PMA_MYSQL_INT_VERSION', true)) {            define('PMA_MYSQL_INT_VERSION', PMA_cacheGet('PMA_MYSQL_INT_VERSION', true));            define('PMA_MYSQL_STR_VERSION', PMA_cacheGet('PMA_MYSQL_STR_VERSION', true));        } else {            $mysql_version = PMA_DBI_fetch_value(                'SELECT VERSION()', 0, 0, $link, PMA_DBI_QUERY_STORE);            if ($mysql_version) {                $match = explode('.', $mysql_version);                define('PMA_MYSQL_INT_VERSION',                    (int) sprintf('%d%02d%02d', $match[0], $match[1],                            intval($match[2])));                define('PMA_MYSQL_STR_VERSION', $mysql_version);                unset($mysql_version, $match);            } else {                define('PMA_MYSQL_INT_VERSION', 50015);                define('PMA_MYSQL_STR_VERSION', '5.00.15');            }            PMA_cacheSet('PMA_MYSQL_INT_VERSION', PMA_MYSQL_INT_VERSION, true);            PMA_cacheSet('PMA_MYSQL_STR_VERSION', PMA_MYSQL_STR_VERSION, true);        }    }    if (! empty($GLOBALS['collation_connection'])) {        $mysql_charset = explode('_', $GLOBALS['collation_connection']);        PMA_DBI_query("SET NAMES '" . $mysql_charset[0] . "' COLLATE '" . $GLOBALS['collation_connection'] . "';",            $link, PMA_DBI_QUERY_STORE);    } else {        PMA_DBI_query("SET NAMES 'utf8' COLLATE 'utf8_general_ci';", $link, PMA_DBI_QUERY_STORE);    }}/** * returns a single value from the given result or query, * if the query or the result has more than one row or field * the first field of the first row is returned * * <code> * $sql = 'SELECT `name` FROM `user` WHERE `id` = 123'; * $user_name = PMA_DBI_fetch_value($sql); * // produces * // $user_name = 'John Doe' * </code> * * @uses    is_string() * @uses    is_int() * @uses    PMA_DBI_try_query() * @uses    PMA_DBI_num_rows() * @uses    PMA_DBI_fetch_row() * @uses    PMA_DBI_fetch_assoc() * @uses    PMA_DBI_free_result() * @param   string|mysql_result $result query or mysql result * @param   integer             $row_number row to fetch the value from, *                                      starting at 0, with 0 beeing default * @param   integer|string      $field  field to fetch the value from, *                                      starting at 0, with 0 beeing default * @param   resource            $link   mysql link * @param   mixed               $options * @return  mixed               value of first field in first row from result *                              or false if not found */function PMA_DBI_fetch_value($result, $row_number = 0, $field = 0, $link = null, $options = 0) {    $value = false;    if (is_string($result)) {        $result = PMA_DBI_try_query($result, $link, $options | PMA_DBI_QUERY_STORE);    }    // return false if result is empty or false    // or requested row is larger than rows in result    if (PMA_DBI_num_rows($result) < ($row_number + 1)) {        return $value;    }    // if $field is an integer use non associative mysql fetch function    if (is_int($field)) {        $fetch_function = 'PMA_DBI_fetch_row';    } else {        $fetch_function = 'PMA_DBI_fetch_assoc';    }    // get requested row    for ($i = 0; $i <= $row_number; $i++) {        $row = $fetch_function($result);    }    PMA_DBI_free_result($result);    // return requested field    if (isset($row[$field])) {        $value = $row[$field];    }    unset($row);    return $value;}/** * returns only the first row from the result * * <code> * $sql = 'SELECT * FROM `user` WHERE `id` = 123'; * $user = PMA_DBI_fetch_single_row($sql); * // produces * // $user = array('id' => 123, 'name' => 'John Doe') * </code> * * @uses    is_string() * @uses    PMA_DBI_try_query() * @uses    PMA_DBI_num_rows() * @uses    PMA_DBI_fetch_row() * @uses    PMA_DBI_fetch_assoc() * @uses    PMA_DBI_fetch_array() * @uses    PMA_DBI_free_result() * @param   string|mysql_result $result query or mysql result * @param   string              $type   NUM|ASSOC|BOTH *                                      returned array should either numeric *                                      associativ or booth * @param   resource            $link   mysql link * @param   mixed               $options * @return  array|boolean       first row from result *                              or false if result is empty */function PMA_DBI_fetch_single_row($result, $type = 'ASSOC', $link = null, $options = 0) {    if (is_string($result)) {        $result = PMA_DBI_try_query($result, $link, $options | PMA_DBI_QUERY_STORE);    }    // return null if result is empty or false    if (! PMA_DBI_num_rows($result)) {        return false;    }    switch ($type) {        case 'NUM' :            $fetch_function = 'PMA_DBI_fetch_row';            break;        case 'ASSOC' :            $fetch_function = 'PMA_DBI_fetch_assoc';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -