!C99Shell v. 1.0 pre-release build #16!

Software: Apache/2.0.54 (Fedora). PHP/5.0.4 

uname -a: Linux mina-info.me 2.6.17-1.2142_FC4smp #1 SMP Tue Jul 11 22:57:02 EDT 2006 i686 

uid=48(apache) gid=48(apache) groups=48(apache)
context=system_u:system_r:httpd_sys_script_t
 

Safe-mode: OFF (not secure)

/home/mnnews/public_html/login/phpmyadmin/libraries/plugins/import/   drwxr-xr-x
Free 4.41 GB of 27.03 GB (16.32%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     ImportSql.class.php (6.23 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* SQL import plugin for phpMyAdmin
*
* @package    PhpMyAdmin-Import
* @subpackage SQL
*/
if (! defined('PHPMYADMIN')) {
    exit;
}

/* Get the import interface */
require_once 'libraries/plugins/ImportPlugin.class.php';

/**
* Handles the import for the SQL format
*
* @package    PhpMyAdmin-Import
* @subpackage SQL
*/
class ImportSql extends ImportPlugin
{

    
/**
     * Constructor
     */
    
public function __construct()
    {
        
$this->setProperties();
    }

    
/**
     * Sets the import plugin properties.
     * Called in the constructor.
     *
     * @return void
     */
    
protected function setProperties()
    {
        
$props = 'libraries/properties/';
        include_once
"$props/plugins/ImportPluginProperties.class.php";
        include_once
"$props/options/groups/OptionsPropertyRootGroup.class.php";
        include_once
"$props/options/groups/OptionsPropertyMainGroup.class.php";
        include_once
"$props/options/items/SelectPropertyItem.class.php";
        include_once
"$props/options/items/BoolPropertyItem.class.php";

        
$importPluginProperties = new ImportPluginProperties();
        
$importPluginProperties->setText('SQL');
        
$importPluginProperties->setExtension('sql');
        
$importPluginProperties->setOptionsText(__('Options'));

        
$compats = $GLOBALS['dbi']->getCompatibilities();
        if (
count($compats) > 0) {
            
$values = array();
            foreach (
$compats as $val) {
                
$values[$val] = $val;
            }

            
// create the root group that will be the options field for
            // $importPluginProperties
            // this will be shown as "Format specific options"
            
$importSpecificOptions = new OptionsPropertyRootGroup();
            
$importSpecificOptions->setName("Format Specific Options");

            
// general options main group
            
$generalOptions = new OptionsPropertyMainGroup();
            
$generalOptions->setName("general_opts");
            
// create primary items and add them to the group
            
$leaf = new SelectPropertyItem();
            
$leaf->setName("compatibility");
            
$leaf->setText(__('SQL compatibility mode:'));
            
$leaf->setValues($values);
            
$leaf->setDoc(
                array(
                    
'manual_MySQL_Database_Administration',
                    
'Server_SQL_mode',
                )
            );
            
$generalOptions->addProperty($leaf);
            
$leaf = new BoolPropertyItem();
            
$leaf->setName("no_auto_value_on_zero");
            
$leaf->setText(
                
__('Do not use <code>AUTO_INCREMENT</code> for zero values')
            );
            
$leaf->setDoc(
                array(
                    
'manual_MySQL_Database_Administration',
                    
'Server_SQL_mode',
                    
'sqlmode_no_auto_value_on_zero'
                
)
            );
            
$generalOptions->addProperty($leaf);

            
// add the main group to the root group
            
$importSpecificOptions->addProperty($generalOptions);
            
// set the options for the import plugin property item
            
$importPluginProperties->setOptions($importSpecificOptions);
        }

        
$this->properties = $importPluginProperties;
    }

    
/**
     * Handles the whole import logic
     *
     * @param array &$sql_data 2-element array with sql data
     *
     * @return void
     */
    
public function doImport(&$sql_data = array())
    {
        global
$error, $timeout_passed;

        
// Handle compatibility options.
        
$this->_setSQLMode($GLOBALS['dbi'], $_REQUEST);

        
$bq = new SqlParserUtilsBufferedQuery();
        if (isset(
$_POST['sql_delimiter'])) {
            
$bq->setDelimiter($_POST['sql_delimiter']);
        }

        
/**
         * Will be set in PMA_importGetNextChunk().
         * @global bool $GLOBALS['finished']
         */
        
$GLOBALS['finished'] = false;

        while ((!
$error) && (!$timeout_passed)) {

            
// Getting the first statement, the remaining data and the last
            // delimiter.
            
$statement = $bq->extract();

            
// If there is no full statement, we are looking for more data.
            
if (empty($statement)) {

                
// Importing new data.
                
$newData = PMA_importGetNextChunk();

                
// Subtract data we didn't handle yet and stop processing.
                
if ($newData === false) {
                    
$GLOBALS['offset'] -= mb_strlen($bq->query);
                    break;
                }

                
// Checking if the input buffer has finished.
                
if ($newData === true) {
                    
$GLOBALS['finished'] = true;
                    break;
                }

                
// Convert CR (but not CRLF) to LF otherwise all queries may
                // not get executed on some platforms.
                
$bq->query .= preg_replace("/\r($|[^\n])/", "\n$1", $newData);

                continue;
            }

            
// Executing the query.
            
PMA_importRunQuery($statement, $statement, false, $sql_data);
        }

        
// Extracting remaining statements.
        
while ((!$error) && (!$timeout_passed) && (!empty($bq->query))) {
            
$statement = $bq->extract(true);
            if (!empty(
$statement)) {
                
PMA_importRunQuery($statement, $statement, false, $sql_data);
            }
        }

        
// Finishing.
        
PMA_importRunQuery('', '', false, $sql_data);
    }

    
/**
     * Handle compatibility options
     *
     * @param PMA_DatabaseInterface $dbi     Database interface
     * @param array                 $request Request array
     *
     * @return void
     */
    
private function _setSQLMode($dbi, $request)
    {
        
$sql_modes = array();
        if (isset(
$request['sql_compatibility'])
            &&
'NONE' != $request['sql_compatibility']
        ) {
            
$sql_modes[] = $request['sql_compatibility'];
        }
        if (isset(
$request['sql_no_auto_value_on_zero'])) {
            
$sql_modes[] = 'NO_AUTO_VALUE_ON_ZERO';
        }
        if (
count($sql_modes) > 0) {
            
$dbi->tryQuery(
                
'SET SQL_MODE="' . implode(',', $sql_modes) . '"'
            
);
        }
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #16 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0043 ]--