当前位置: 首页>>代码示例>>PHP>>正文


PHP PMA_sqlAddslashes函数代码示例

本文整理汇总了PHP中PMA_sqlAddslashes函数的典型用法代码示例。如果您正苦于以下问题:PHP PMA_sqlAddslashes函数的具体用法?PHP PMA_sqlAddslashes怎么用?PHP PMA_sqlAddslashes使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了PMA_sqlAddslashes函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: PMA_duplicate_table

/**
 * Inserts existing entries in a PMA_* table by reading a value from an old entry
 *
 * @param   string  The array index, which Relation feature to check
 *                  ('relwork', 'commwork', ...)
 * @param   string  The array index, which PMA-table to update
 *                  ('bookmark', 'relation', ...)
 * @param   array   Which fields will be SELECT'ed from the old entry
 * @param   array   Which fields will be used for the WHERE query
 *                  (array('FIELDNAME' => 'FIELDVALUE'))
 * @param   array   Which fields will be used as new VALUES. These are the important
 *                  keys which differ from the old entry.
 *                  (array('FIELDNAME' => 'NEW FIELDVALUE'))
 * @global  string  relation variable
 *
 * @author          Garvin Hicking <me@supergarv.de>
 */
function PMA_duplicate_table($work, $pma_table, $get_fields, $where_fields, $new_fields)
{
    global $cfgRelation;
    $last_id = -1;
    if ($cfgRelation[$work]) {
        $select_parts = array();
        $row_fields = array();
        foreach ($get_fields as $nr => $get_field) {
            $select_parts[] = PMA_backquote($get_field);
            $row_fields[$get_field] = 'cc';
        }
        $where_parts = array();
        foreach ($where_fields as $_where => $_value) {
            $where_parts[] = PMA_backquote($_where) . ' = \'' . PMA_sqlAddslashes($_value) . '\'';
        }
        $new_parts = array();
        $new_value_parts = array();
        foreach ($new_fields as $_where => $_value) {
            $new_parts[] = PMA_backquote($_where);
            $new_value_parts[] = PMA_sqlAddslashes($_value);
        }
        $table_copy_query = 'SELECT ' . implode(', ', $select_parts) . ' FROM ' . PMA_backquote($cfgRelation[$pma_table]) . ' WHERE ' . implode(' AND ', $where_parts);
        $table_copy_rs = PMA_query_as_cu($table_copy_query);
        while ($table_copy_row = @PMA_mysql_fetch_array($table_copy_rs)) {
            $value_parts = array();
            foreach ($table_copy_row as $_key => $_val) {
                if (isset($row_fields[$_key]) && $row_fields[$_key] == 'cc') {
                    $value_parts[] = PMA_sqlAddslashes($_val);
                }
            }
            $new_table_query = 'INSERT IGNORE INTO ' . PMA_backquote($cfgRelation[$pma_table]) . ' (' . implode(', ', $select_parts) . ', ' . implode(', ', $new_parts) . ')' . ' VALUES ' . ' (\'' . implode('\', \'', $value_parts) . '\', \'' . implode('\', \'', $new_value_parts) . '\')';
            $new_table_rs = PMA_query_as_cu($new_table_query);
            $last_id = @function_exists('mysql_insert_id') ? @mysql_insert_id() : -1;
        }
        // end while
        return $last_id;
    }
    return true;
}
开发者ID:quartemer,项目名称:xoopserver,代码行数:56,代码来源:tbl_move_copy.php

示例2: __construct

 /**
 * The "Table_Stats" constructor
 *
 * @param string table_name The table name
 * @param integer ff The font size
 * @param integer samewidth The max. with among tables
 * @param boolean show_keys Whether to display keys or not
 * @param boolean show_info Whether to display table position or not
 * @global object    The current SVG image document
 * @global integer   The current page number (from the
 *                     $cfg['Servers'][$i]['table_coords'] table)
 * @global array     The relations settings
 * @global string    The current db name
 * @access private
 * @see PMA_SVG, Table_Stats::Table_Stats_setWidth,
        Table_Stats::Table_Stats_setHeight
 */
 function __construct($tableName, $font, $fontSize, $pageNumber, &$same_wide_width, $showKeys = false, $showInfo = false)
 {
     global $svg, $cfgRelation, $db;
     $this->_tableName = $tableName;
     $sql = 'DESCRIBE ' . PMA_backquote($tableName);
     $result = PMA_DBI_try_query($sql, null, PMA_DBI_QUERY_STORE);
     if (!$result || !PMA_DBI_num_rows($result)) {
         $svg->dieSchema($pageNumber, "SVG", sprintf(__('The %s table doesn\'t exist!'), $tableName));
     }
     /*
      * load fields
      * check to see if it will load all fields or only the foreign keys
      */
     if ($showKeys) {
         $indexes = PMA_Index::getFromTable($this->_tableName, $db);
         $all_columns = array();
         foreach ($indexes as $index) {
             $all_columns = array_merge($all_columns, array_flip(array_keys($index->getColumns())));
         }
         $this->fields = array_keys($all_columns);
     } else {
         while ($row = PMA_DBI_fetch_row($result)) {
             $this->fields[] = $row[0];
         }
     }
     $this->_showInfo = $showInfo;
     // height and width
     $this->_setHeightTable($fontSize);
     // setWidth must me after setHeight, because title
     // can include table height which changes table width
     $this->_setWidthTable($font, $fontSize);
     if ($same_wide_width < $this->width) {
         $same_wide_width = $this->width;
     }
     // x and y
     $sql = 'SELECT x, y FROM ' . PMA_backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_backquote($cfgRelation['table_coords']) . ' WHERE db_name = \'' . PMA_sqlAddslashes($db) . '\'' . ' AND   table_name = \'' . PMA_sqlAddslashes($tableName) . '\'' . ' AND   pdf_page_number = ' . $pageNumber;
     $result = PMA_query_as_controluser($sql, false, PMA_DBI_QUERY_STORE);
     if (!$result || !PMA_DBI_num_rows($result)) {
         $svg->dieSchema($pageNumber, "SVG", sprintf(__('Please configure the coordinates for table %s'), $tableName));
     }
     list($this->x, $this->y) = PMA_DBI_fetch_row($result);
     $this->x = (double) $this->x;
     $this->y = (double) $this->y;
     // displayfield
     $this->displayfield = PMA_getDisplayField($db, $tableName);
     // index
     $result = PMA_DBI_query('SHOW INDEX FROM ' . PMA_backquote($tableName) . ';', null, PMA_DBI_QUERY_STORE);
     if (PMA_DBI_num_rows($result) > 0) {
         while ($row = PMA_DBI_fetch_assoc($result)) {
             if ($row['Key_name'] == 'PRIMARY') {
                 $this->primary[] = $row['Column_name'];
             }
         }
     }
 }
开发者ID:dingdong2310,项目名称:g5_theme,代码行数:72,代码来源:Svg_Relation_Schema.class.php

示例3: PMA_Bookmark_delete

/**
 * Deletes a bookmark
 *
 * @uses    PMA_backquote()
 * @uses    PMA_sqlAddslashes()
 * @uses    PMA_DBI_try_query()
 * @uses    PMA_Bookmark_getParams()
 * @global  resource  the controluser db connection handle
 *
 * @param   string   the current database name
 * @param   integer  the id of the bookmark to get
 *
 * @access  public
 */
function PMA_Bookmark_delete($db, $id)
{
    global $controllink;
    $cfgBookmark = PMA_Bookmark_getParams();
    if (empty($cfgBookmark)) {
        return false;
    }
    $query = 'DELETE FROM ' . PMA_backquote($cfgBookmark['db']) . '.' . PMA_backquote($cfgBookmark['table']) . ' WHERE (user = \'' . PMA_sqlAddslashes($cfgBookmark['user']) . '\'' . '        OR user = \'\')' . ' AND id = ' . $id;
    return PMA_DBI_try_query($query, $controllink);
}
开发者ID:BGCX262,项目名称:zuozhenshi-prego-svn-to-git,代码行数:24,代码来源:bookmark.lib.php

示例4: PMA_backquote

        $message = $strSuccess;
    }
}
if (isset($submittype)) {
    $sql_query = 'ALTER TABLE ' . PMA_backquote($table) . ' TYPE = ' . $tbl_type;
    $result = PMA_DBI_query($sql_query);
    $message = $strSuccess;
}
if (isset($submitcollation)) {
    $sql_query = 'ALTER TABLE ' . PMA_backquote($table) . ' DEFAULT' . PMA_generateCharsetQueryPart($tbl_collation);
    $result = PMA_DBI_query($sql_query);
    $message = $strSuccess;
    unset($tbl_collation);
}
if (isset($submitoptions)) {
    $sql_query = 'ALTER TABLE ' . PMA_backquote($table) . (isset($pack_keys) ? ' pack_keys=1' : ' pack_keys=0') . (isset($checksum) ? ' checksum=1' : ' checksum=0') . (isset($delay_key_write) ? ' delay_key_write=1' : ' delay_key_write=0') . (!empty($auto_increment) ? ' auto_increment=' . PMA_sqlAddslashes($auto_increment) : '');
    $result = PMA_DBI_query($sql_query);
    $message = $strSuccess;
}
/**
 * Reordering the table has been requested by the user
 */
if (isset($submitorderby) && !empty($order_field)) {
    $sql_query = 'ALTER TABLE ' . PMA_backquote($table) . ' ORDER BY ' . PMA_backquote(urldecode($order_field));
    if (isset($order_order) && $order_order == 'desc') {
        $sql_query .= ' DESC';
    }
    $result = PMA_DBI_query($sql_query);
    $message = $result ? $strSuccess : $strFailed;
}
// end if
开发者ID:alexhava,项目名称:elixirjuice,代码行数:31,代码来源:tbl_properties_operations.php

示例5: PMA_setMIME

/**
* Set a single mimetype to a certain value.
*
* @param   string   the name of the db
* @param   string   the name of the table
* @param   string   the name of the column
* @param   string   the mimetype of the column
* @param   string   the transformation of the column
* @param   string   the transformation options of the column
* @param   string   (optional) force delete, will erase any existing comments for this column
*
* @return  boolean  true, if comment-query was made.
*
* @global  array    the list of relations settings
*
* @access  public
*/
function PMA_setMIME($db, $table, $key, $mimetype, $transformation, $transformation_options, $forcedelete = false)
{
    global $cfgRelation;
    $test_qry = 'SELECT mimetype, ' . PMA_backquote('comment') . ' FROM ' . PMA_backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_backquote($cfgRelation['column_info']) . ' WHERE db_name = \'' . PMA_sqlAddslashes($db) . '\'' . ' AND table_name = \'' . PMA_sqlAddslashes($table) . '\'' . ' AND column_name = \'' . PMA_sqlAddslashes($key) . '\'';
    $test_rs = PMA_query_as_cu($test_qry, TRUE, PMA_DBI_QUERY_STORE);
    if ($test_rs && PMA_DBI_num_rows($test_rs) > 0) {
        $row = @PMA_DBI_fetch_assoc($test_rs);
        PMA_DBI_free_result($test_rs);
        unset($test_rs);
        if (!$forcedelete && (strlen($mimetype) > 0 || strlen($transformation) > 0 || strlen($transformation_options) > 0 || strlen($row['comment']) > 0)) {
            $upd_query = 'UPDATE ' . PMA_backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_backquote($cfgRelation['column_info']) . ' SET mimetype = \'' . PMA_sqlAddslashes($mimetype) . '\',' . '     transformation = \'' . PMA_sqlAddslashes($transformation) . '\',' . '     transformation_options = \'' . PMA_sqlAddslashes($transformation_options) . '\'' . ' WHERE db_name  = \'' . PMA_sqlAddslashes($db) . '\'' . ' AND table_name = \'' . PMA_sqlAddslashes($table) . '\'' . ' AND column_name = \'' . PMA_sqlAddslashes($key) . '\'';
        } else {
            $upd_query = 'DELETE FROM ' . PMA_backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_backquote($cfgRelation['column_info']) . ' WHERE db_name  = \'' . PMA_sqlAddslashes($db) . '\'' . ' AND table_name = \'' . PMA_sqlAddslashes($table) . '\'' . ' AND column_name = \'' . PMA_sqlAddslashes($key) . '\'';
        }
    } elseif (strlen($mimetype) > 0 || strlen($transformation) > 0 || strlen($transformation_options) > 0) {
        $upd_query = 'INSERT INTO ' . PMA_backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_backquote($cfgRelation['column_info']) . ' (db_name, table_name, column_name, mimetype, transformation, transformation_options) ' . ' VALUES(' . '\'' . PMA_sqlAddslashes($db) . '\',' . '\'' . PMA_sqlAddslashes($table) . '\',' . '\'' . PMA_sqlAddslashes($key) . '\',' . '\'' . PMA_sqlAddslashes($mimetype) . '\',' . '\'' . PMA_sqlAddslashes($transformation) . '\',' . '\'' . PMA_sqlAddslashes($transformation_options) . '\')';
    }
    if (isset($upd_query)) {
        $upd_rs = PMA_query_as_cu($upd_query);
        PMA_DBI_free_result($upd_rs);
        unset($upd_rs);
        return true;
    } else {
        return false;
    }
}
开发者ID:johangas,项目名称:moped,代码行数:43,代码来源:transformations.lib.php

示例6: PMA_backquote

">
        <td colspan="3">
        <?php 
    echo '<a href="pdf_pages.php?' . $takeaway . '">';
    if ($cfg['PropertiesIconic']) {
        echo '<img src="' . $pmaThemeImage . 'b_edit.png" border="0" width="16" height="16" hspace="2" align="middle" />';
    }
    echo '' . $strEditPDFPages . '</a>';
    ?>
        </td>
    </tr>

    <!-- PDF schema -->
    <?php 
    // We only show this if we find something in the new pdf_pages table
    $test_query = 'SELECT * FROM ' . PMA_backquote($cfgRelation['pdf_pages']) . ' WHERE db_name = \'' . PMA_sqlAddslashes($db) . '\'';
    $test_rs = PMA_query_as_cu($test_query, NULL, PMA_DBI_QUERY_STORE);
    if ($test_rs && PMA_DBI_num_rows($test_rs) > 0) {
        ?>
    <tr bgcolor="<?php 
        echo $cfg['BgcolorTwo'];
        ?>
">
        <td colspan="3">
        <?php 
        echo PMA_generate_common_hidden_inputs($db);
        if ($cfg['PropertiesIconic']) {
            echo '<img src="' . $pmaThemeImage . 'b_view.png" border="0" width="16" height="16" hspace="2" align="middle" />';
        }
        echo $strDisplayPDF;
        ?>
开发者ID:lifecom,项目名称:test,代码行数:31,代码来源:db_operations.php

示例7: PMA_getUvaCondition

 /**
  * Function to generate unique condition for specified row.
  *
  * @param   resource    handle for current query
  * @param   integer     number of fields
  * @param   array       meta information about fields
  * @param   array       current row
  *
  * @access  public
  * @author  Michal Cihar (michal@cihar.com)
  * @return  string      calculated condition
  */
 function PMA_getUvaCondition($handle, $fields_cnt, $fields_meta, $row)
 {
     $primary_key = '';
     $unique_key = '';
     $uva_nonprimary_condition = '';
     for ($i = 0; $i < $fields_cnt; ++$i) {
         $field_flags = PMA_DBI_field_flags($handle, $i);
         $meta = $fields_meta[$i];
         // do not use an alias in a condition
         $column_for_condition = $meta->name;
         if (isset($analyzed_sql[0]['select_expr']) && is_array($analyzed_sql[0]['select_expr'])) {
             foreach ($analyzed_sql[0]['select_expr'] as $select_expr_position => $select_expr) {
                 $alias = $analyzed_sql[0]['select_expr'][$select_expr_position]['alias'];
                 if (!empty($alias)) {
                     $true_column = $analyzed_sql[0]['select_expr'][$select_expr_position]['column'];
                     if ($alias == $meta->name) {
                         $column_for_condition = $true_column;
                     }
                     // end if
                 }
                 // end if
             }
             // end while
         }
         // to fix the bug where float fields (primary or not)
         // can't be matched because of the imprecision of
         // floating comparison, use CONCAT
         // (also, the syntax "CONCAT(field) IS NULL"
         // that we need on the next "if" will work)
         if ($meta->type == 'real') {
             $condition = ' CONCAT(' . PMA_backquote($column_for_condition) . ') ';
         } else {
             // string and blob fields have to be converted using
             // the system character set (always utf8) since
             // mysql4.1 can use different charset for fields.
             if (PMA_MYSQL_INT_VERSION >= 40100 && ($meta->type == 'string' || $meta->type == 'blob')) {
                 $condition = ' CONVERT(' . PMA_backquote($column_for_condition) . ' USING utf8) ';
             } else {
                 $condition = ' ' . PMA_backquote($column_for_condition) . ' ';
             }
         }
         // end if... else...
         if (!isset($row[$i]) || is_null($row[$i])) {
             $condition .= 'IS NULL AND';
         } else {
             // timestamp is numeric on some MySQL 4.1
             if ($meta->numeric && $meta->type != 'timestamp') {
                 $condition .= '= ' . $row[$i] . ' AND';
             } elseif ($meta->type == 'blob' && stristr($field_flags, 'BINARY') && !empty($row[$i])) {
                 // use a CAST if possible, to avoid problems
                 // if the field contains wildcard characters % or _
                 if (PMA_MYSQL_INT_VERSION < 40002) {
                     $condition .= 'LIKE 0x' . bin2hex($row[$i]) . ' AND';
                 } else {
                     $condition .= '= CAST(0x' . bin2hex($row[$i]) . ' AS BINARY) AND';
                 }
             } else {
                 $condition .= '= \'' . PMA_sqlAddslashes($row[$i], FALSE, TRUE) . '\' AND';
             }
         }
         if ($meta->primary_key > 0) {
             $primary_key .= $condition;
         } else {
             if ($meta->unique_key > 0) {
                 $unique_key .= $condition;
             }
         }
         $uva_nonprimary_condition .= $condition;
     }
     // end for
     // Correction uva 19991216: prefer primary or unique keys
     // for condition, but use conjunction of all values if no
     // primary key
     if ($primary_key) {
         $uva_condition = $primary_key;
     } else {
         if ($unique_key) {
             $uva_condition = $unique_key;
         } else {
             $uva_condition = $uva_nonprimary_condition;
         }
     }
     return preg_replace('|\\s?AND$|', '', $uva_condition);
 }
开发者ID:Apxe,项目名称:Rubin_final,代码行数:96,代码来源:common.lib.php

示例8: unset

 * Go back to the calling script
 */
// Checks for a valid target script
if (isset($table) && $table == '') {
    unset($table);
}
if (isset($db) && $db == '') {
    unset($db);
}
$is_db = $is_table = FALSE;
if ($goto == 'tbl_properties.php') {
    if (!isset($table)) {
        $goto = 'db_details.php';
    } else {
        PMA_mysql_select_db($db);
        $is_table = @PMA_mysql_query('SHOW TABLES LIKE \'' . PMA_sqlAddslashes($table, TRUE) . '\'');
        if (!($is_table && @mysql_numrows($is_table))) {
            $goto = 'db_details.php';
            unset($table);
        }
    }
    // end if... else...
}
if ($goto == 'db_details.php') {
    if (isset($table)) {
        unset($table);
    }
    if (!isset($db)) {
        $goto = 'main.php';
    } else {
        $is_db = @PMA_mysql_select_db($db);
开发者ID:quartemer,项目名称:xoopserver,代码行数:31,代码来源:read_dump.php

示例9: PMA_deleteBookmarks

/**
 * Deletes a bookmark
 *
 * @global  resource  the controluser db connection handle
 *
 * @param   string   the current database name
 * @param   array    the bookmark parameters for the current user
 * @param   integer  the id of the bookmark to get
 *
 * @access  public
 */
function PMA_deleteBookmarks($db, $cfgBookmark, $id)
{
    global $controllink;
    $query = 'DELETE FROM ' . PMA_backquote($cfgBookmark['db']) . '.' . PMA_backquote($cfgBookmark['table']) . ' WHERE (user = \'' . PMA_sqlAddslashes($cfgBookmark['user']) . '\'' . '        OR user = \'\')' . ' AND id = ' . $id;
    $result = PMA_DBI_try_query($query, $controllink);
}
开发者ID:johangas,项目名称:moped,代码行数:17,代码来源:bookmark.lib.php

示例10: PMA_DBI_get_triggers

/**
 * returns details about the TRIGGERs of a specific table
 *
 * @uses    PMA_DBI_fetch_result()
 * @param   string              $db     db name
 * @param   string              $table  table name
 * @param   string              $delimiter  the delimiter to use (may be empty)
 *
 * @return  array               information about triggers (may be empty)
 */
function PMA_DBI_get_triggers($db, $table, $delimiter = '//')
{
    $result = array();
    if (!$GLOBALS['cfg']['Server']['DisableIS']) {
        // Note: in http://dev.mysql.com/doc/refman/5.0/en/faqs-triggers.html
        // their example uses WHERE TRIGGER_SCHEMA='dbname' so let's use this
        // instead of WHERE EVENT_OBJECT_SCHEMA='dbname'
        $triggers = PMA_DBI_fetch_result("SELECT TRIGGER_SCHEMA, TRIGGER_NAME, EVENT_MANIPULATION, ACTION_TIMING, ACTION_STATEMENT, EVENT_OBJECT_SCHEMA, EVENT_OBJECT_TABLE FROM information_schema.TRIGGERS WHERE TRIGGER_SCHEMA= '" . PMA_sqlAddslashes($db, true) . "' and EVENT_OBJECT_TABLE = '" . PMA_sqlAddslashes($table, true) . "';");
    } else {
        $triggers = PMA_DBI_fetch_result("SHOW TRIGGERS FROM " . PMA_sqlAddslashes($db, true) . " LIKE '" . PMA_sqlAddslashes($table, true) . "';");
    }
    if ($triggers) {
        foreach ($triggers as $trigger) {
            if ($GLOBALS['cfg']['Server']['DisableIS']) {
                $trigger['TRIGGER_NAME'] = $trigger['Trigger'];
                $trigger['ACTION_TIMING'] = $trigger['Timing'];
                $trigger['EVENT_MANIPULATION'] = $trigger['Event'];
                $trigger['EVENT_OBJECT_TABLE'] = $trigger['Table'];
                $trigger['ACTION_STATEMENT'] = $trigger['Statement'];
            }
            $one_result = array();
            $one_result['name'] = $trigger['TRIGGER_NAME'];
            $one_result['action_timing'] = $trigger['ACTION_TIMING'];
            $one_result['event_manipulation'] = $trigger['EVENT_MANIPULATION'];
            // do not prepend the schema name; this way, importing the
            // definition into another schema will work
            $one_result['full_trigger_name'] = PMA_backquote($trigger['TRIGGER_NAME']);
            $one_result['drop'] = 'DROP TRIGGER IF EXISTS ' . $one_result['full_trigger_name'];
            $one_result['create'] = 'CREATE TRIGGER ' . $one_result['full_trigger_name'] . ' ' . $trigger['ACTION_TIMING'] . ' ' . $trigger['EVENT_MANIPULATION'] . ' ON ' . PMA_backquote($trigger['EVENT_OBJECT_TABLE']) . "\n" . ' FOR EACH ROW ' . $trigger['ACTION_STATEMENT'] . "\n" . $delimiter . "\n";
            $result[] = $one_result;
        }
    }
    return $result;
}
开发者ID:alexhava,项目名称:elixirjuice,代码行数:44,代码来源:database_interface.lib.php

示例11: _checkAgainstPrivTables

    /**
     * this is just a backup, if all is fine this can be deleted later
     *
     * @deprecated
     */
    protected function _checkAgainstPrivTables()
    {
        // 1. get allowed dbs from the "mysql.db" table
        // lem9: User can be blank (anonymous user)
        $local_query = "
            SELECT DISTINCT `Db` FROM `mysql`.`db`
            WHERE `Select_priv` = 'Y'
            AND `User`
            IN ('" . PMA_sqlAddslashes($GLOBALS['cfg']['Server']['user']) . "', '')";
        $tmp_mydbs = PMA_DBI_fetch_result($local_query, null, null,
            $GLOBALS['controllink']);
        if ($tmp_mydbs) {
            // Will use as associative array of the following 2 code
            // lines:
            //   the 1st is the only line intact from before
            //     correction,
            //   the 2nd replaces $dblist[] = $row['Db'];

            // Code following those 2 lines in correction continues
            // populating $dblist[], as previous code did. But it is
            // now populated with actual database names instead of
            // with regular expressions.
            $tmp_alldbs = PMA_DBI_query('SHOW DATABASES;', $GLOBALS['controllink']);
            // loic1: all databases cases - part 2
            if (isset($tmp_mydbs['%'])) {
                while ($tmp_row = PMA_DBI_fetch_row($tmp_alldbs)) {
                    $dblist[] = $tmp_row[0];
                } // end while
            } else {
                while ($tmp_row = PMA_DBI_fetch_row($tmp_alldbs)) {
                    $tmp_db = $tmp_row[0];
                    if (isset($tmp_mydbs[$tmp_db]) && $tmp_mydbs[$tmp_db] == 1) {
                        $dblist[]           = $tmp_db;
                        $tmp_mydbs[$tmp_db] = 0;
                    } elseif (!isset($dblist[$tmp_db])) {
                        foreach ($tmp_mydbs as $tmp_matchpattern => $tmp_value) {
                            // loic1: fixed bad regexp
                            // TODO: db names may contain characters
                            //       that are regexp instructions
                            $re        = '(^|(\\\\\\\\)+|[^\])';
                            $tmp_regex = preg_replace('/' . addcslashes($re,'/') . '%/', '\\1.*', preg_replace('/' . addcslashes($re,'/') . '_/', '\\1.{1}', $tmp_matchpattern));
                            // Fixed db name matching
                            // 2000-08-28 -- Benjamin Gandon
                            if (preg_match('/^' . addcslashes($tmp_regex,'/') . '$/', $tmp_db)) {
                                $dblist[] = $tmp_db;
                                break;
                            }
                        } // end while
                    } // end if ... elseif ...
                } // end while
            } // end else
            PMA_DBI_free_result($tmp_alldbs);
            unset($tmp_mydbs);
        } // end if

        // 2. get allowed dbs from the "mysql.tables_priv" table
        $local_query = 'SELECT DISTINCT Db FROM mysql.tables_priv WHERE Table_priv LIKE \'%Select%\' AND User = \'' . PMA_sqlAddslashes($GLOBALS['cfg']['Server']['user']) . '\'';
        $rs          = PMA_DBI_try_query($local_query, $GLOBALS['controllink']);
        if ($rs && @PMA_DBI_num_rows($rs)) {
            while ($row = PMA_DBI_fetch_assoc($rs)) {
                if (!in_array($row['Db'], $dblist)) {
                    $dblist[] = $row['Db'];
                }
            } // end while
            PMA_DBI_free_result($rs);
        } // end if
    }
开发者ID:blumenbach,项目名称:blumenbach-online.de,代码行数:72,代码来源:List_Database.class.php

示例12: PMA_DBI_free_result

                    break;
                }
                // end if
            }
            // end while
            PMA_DBI_free_result($rs_usr);
            unset($rs_usr, $row, $re0, $re1);
        } else {
            // Finally, let's try to get the user's privileges by using SHOW
            // GRANTS...
            // Maybe we'll find a little CREATE priv there :)
            $rs_usr = PMA_DBI_try_query('SHOW GRANTS FOR ' . $mysql_cur_user_and_host . ';', $controllink, PMA_DBI_QUERY_STORE);
            if (!$rs_usr) {
                // OK, now we'd have to guess the user's hostname, but we
                // only try out the 'username'@'%' case.
                $rs_usr = PMA_DBI_try_query('SHOW GRANTS FOR ' . PMA_convert_using(PMA_sqlAddslashes($mysql_cur_user), 'quoted') . ';', $controllink, PMA_DBI_QUERY_STORE);
            }
            unset($local_query);
            if ($rs_usr) {
                PMA_analyseShowGrant($rs_usr, $is_create_db_priv, $db_to_create, $is_reload_priv, $dbs_where_create_table_allowed);
                PMA_DBI_free_result($rs_usr);
                unset($rs_usr);
            }
            // end if
        }
        // end elseif
    }
    // end if
}
// end else (MySQL < 4.1.2)
// If disabled, don't show it
开发者ID:Kishaaa,项目名称:cs160-website,代码行数:31,代码来源:check_user_privileges.lib.php

示例13: PMA_backquote

     //  i n s e r t
     if ($is_insert) {
         // no need to add column into the valuelist
         if (strlen($cur_value)) {
             $query_values[] = $cur_value;
             // first inserted row so prepare the list of fields
             if (empty($value_sets)) {
                 $query_fields[] = PMA_backquote($key);
             }
         }
         //  u p d a t e
     } elseif (!empty($me_fields_null_prev[$key]) && !isset($me_fields_null[$key])) {
         // field had the null checkbox before the update
         // field no longer has the null checkbox
         $query_values[] = PMA_backquote($key) . ' = ' . $cur_value;
     } elseif (empty($me_funcs[$key]) && isset($me_fields_prev[$key]) && "'" . PMA_sqlAddslashes($me_fields_prev[$key]) . "'" == $val) {
         // No change for this column and no MySQL function is used -> next column
         continue;
     } elseif (!empty($val)) {
         // avoid setting a field to NULL when it's already NULL
         // (field had the null checkbox before the update
         //  field still has the null checkbox)
         if (!(!empty($me_fields_null_prev[$key]) && isset($me_fields_null[$key]))) {
             $query_values[] = PMA_backquote($key) . ' = ' . $cur_value;
         }
     }
 }
 // end foreach ($me_fields as $key => $val)
 if (count($query_values) > 0) {
     if ($is_insert) {
         $value_sets[] = implode(', ', $query_values);
开发者ID:sonnaxindustries,项目名称:sonnax_php,代码行数:31,代码来源:tbl_replace.php

示例14: PMA_setMIME

/**
 * Set a single mimetype to a certain value.
 *
 * @uses    PMA_DBI_QUERY_STORE
 * @uses    PMA_getRelationsParam()
 * @uses    PMA_backquote()
 * @uses    PMA_sqlAddslashes()
 * @uses    PMA_query_as_cu()
 * @uses    PMA_DBI_num_rows()
 * @uses    PMA_DBI_fetch_assoc()
 * @uses    PMA_DBI_free_result()
 * @uses    strlen()
 * @access  public
 * @param   string   $db        the name of the db
 * @param   string   $table     the name of the table
 * @param   string   $key       the name of the column
 * @param   string   $mimetype  the mimetype of the column
 * @param   string   $transformation    the transformation of the column
 * @param   string   $transformation_options    the transformation options of the column
 * @param   string   $forcedelete   force delete, will erase any existing comments for this column
 * @return  boolean  true, if comment-query was made.
 */
function PMA_setMIME($db, $table, $key, $mimetype, $transformation, $transformation_options, $forcedelete = false)
{
    $cfgRelation = PMA_getRelationsParam();
    if (!$cfgRelation['commwork']) {
        return false;
    }
    $test_qry = '
         SELECT `mimetype`,
                `comment`
           FROM ' . PMA_backquote($cfgRelation['db']) . '.' . PMA_backquote($cfgRelation['column_info']) . '
          WHERE `db_name`     = \'' . PMA_sqlAddslashes($db) . '\'
            AND `table_name`  = \'' . PMA_sqlAddslashes($table) . '\'
            AND `column_name` = \'' . PMA_sqlAddslashes($key) . '\'';
    $test_rs = PMA_query_as_cu($test_qry, true, PMA_DBI_QUERY_STORE);
    if ($test_rs && PMA_DBI_num_rows($test_rs) > 0) {
        $row = PMA_DBI_fetch_assoc($test_rs);
        PMA_DBI_free_result($test_rs);
        if (!$forcedelete && (strlen($mimetype) || strlen($transformation) || strlen($transformation_options) || strlen($row['comment']))) {
            $upd_query = '
                UPDATE ' . PMA_backquote($cfgRelation['db']) . '.' . PMA_backquote($cfgRelation['column_info']) . '
                   SET `mimetype`               = \'' . PMA_sqlAddslashes($mimetype) . '\',
                       `transformation`         = \'' . PMA_sqlAddslashes($transformation) . '\',
                       `transformation_options` = \'' . PMA_sqlAddslashes($transformation_options) . '\'';
        } else {
            $upd_query = 'DELETE FROM ' . PMA_backquote($cfgRelation['db']) . '.' . PMA_backquote($cfgRelation['column_info']);
        }
        $upd_query .= '
            WHERE `db_name`     = \'' . PMA_sqlAddslashes($db) . '\'
              AND `table_name`  = \'' . PMA_sqlAddslashes($table) . '\'
              AND `column_name` = \'' . PMA_sqlAddslashes($key) . '\'';
    } elseif (strlen($mimetype) || strlen($transformation) || strlen($transformation_options)) {
        $upd_query = 'INSERT INTO ' . PMA_backquote($cfgRelation['db']) . '.' . PMA_backquote($cfgRelation['column_info']) . ' (db_name, table_name, column_name, mimetype, transformation, transformation_options) ' . ' VALUES(' . '\'' . PMA_sqlAddslashes($db) . '\',' . '\'' . PMA_sqlAddslashes($table) . '\',' . '\'' . PMA_sqlAddslashes($key) . '\',' . '\'' . PMA_sqlAddslashes($mimetype) . '\',' . '\'' . PMA_sqlAddslashes($transformation) . '\',' . '\'' . PMA_sqlAddslashes($transformation_options) . '\')';
    }
    if (isset($upd_query)) {
        return PMA_query_as_cu($upd_query);
    } else {
        return false;
    }
}
开发者ID:gerrywastaken,项目名称:phpmyadmin-GitHubed,代码行数:61,代码来源:transformations.lib.php

示例15: unset

 unset($fulltext);
 // Builds the 'create table' statement
 $sql_query = 'CREATE TABLE ' . PMA_backquote($table) . ' (' . $sql_query . ')';
 $query_cpy = 'CREATE TABLE ' . PMA_backquote($table) . ' (' . $query_cpy . "\n" . ')';
 // Adds table type, character set and comments
 if (!empty($tbl_type) && $tbl_type != 'Default') {
     $sql_query .= ' ' . PMA_ENGINE_KEYWORD . ' = ' . $tbl_type;
     $query_cpy .= "\n" . PMA_ENGINE_KEYWORD . ' = ' . $tbl_type;
 }
 if (PMA_MYSQL_INT_VERSION >= 40100 && !empty($tbl_collation)) {
     $sql_query .= PMA_generateCharsetQueryPart($tbl_collation);
     $query_cpy .= "\n" . PMA_generateCharsetQueryPart($tbl_collation);
 }
 if (!empty($comment)) {
     $sql_query .= ' COMMENT = \'' . PMA_sqlAddslashes($comment) . '\'';
     $query_cpy .= "\n" . 'COMMENT = \'' . PMA_sqlAddslashes($comment) . '\'';
 }
 // Executes the query
 $error_create = false;
 $result = PMA_DBI_try_query($sql_query) or $error_create = true;
 if ($error_create == false) {
     $sql_query = $query_cpy . ';';
     unset($query_cpy);
     $message = $strTable . ' ' . htmlspecialchars($table) . ' ' . $strHasBeenCreated;
     // garvin: If comments were sent, enable relation stuff
     require_once './libs/relation.lib.php';
     require_once './libs/transformations.lib.php';
     $cfgRelation = PMA_getRelationsParam();
     // garvin: Update comment table, if a comment was set.
     if (isset($field_comments) && is_array($field_comments) && $cfgRelation['commwork'] && PMA_MYSQL_INT_VERSION < 40100) {
         foreach ($field_comments as $fieldindex => $fieldcomment) {
开发者ID:BGCX261,项目名称:zhe-project-agri-hg-to-git,代码行数:31,代码来源:tbl_create.php


注:本文中的PMA_sqlAddslashes函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。