!C99Shell v. 2.1 [PHP 8 Update] [02.02.2022]!

Software: Apache/2.4.53 (Unix) OpenSSL/1.1.1o PHP/7.4.29 mod_perl/2.0.12 Perl/v5.34.1. PHP/7.4.29 

uname -a: Linux vps-2738122-x 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64 

uid=1(daemon) gid=1(daemon) grupos=1(daemon) 

Safe-mode: OFF (not secure)

/opt/apex_tdfonline/php/modelo/personalizacion/recuperador/   drwxr-xr-x
Free 14.26 GB of 61.93 GB (23.03%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     toba_recuperador_tablas.php (2.32 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

/**
 * Description of toba_recuperador_tablas
 *
 * @author sp14ab
 */
class toba_recuperador_tablas extends toba_recuperador
{
    protected 
$tablas_db;

    protected function 
ini()
    {
        
$this->tablas_db = new toba_recuperador_utildb_tablas($this->proyecto);
    }

    protected function 
get_diferencia()
    {
        
$tablas = array();
        foreach ( 
toba_db_tablas_proyecto::get_lista() as $tabla ) {
            if (
$this->tablas_db->corresponde_comparar($tabla)) {
                
$tablas[$tabla] = $this->comparar($tabla);
            }

        }

        
array_borrar_subarrays_vacios($tablas);

        return 
$tablas;
    }
    
    protected function 
get_unicos($schema)
    {
        return array();        
// Asumo que no se agregan ni se borran tablas
    
}

    
/**
     * Compara la tabla $tabla en los dos schemas
     * @param string $tabla 
     */
    
protected function comparar($tabla)
    {
        
$this->db->set_schema($this->schema_a);
        
$tabla_a $this->tablas_db->get_contenido_tabla_datos($tabla);
        
$this->db->set_schema($this->schema_b);
        
$tabla_b $this->tablas_db->get_contenido_tabla_datos($tabla);
        return 
array_merge_recursive($this->diff_borrados($tabla_a$tabla_b), $this->diff($tabla_a$tabla_b));
    }

    protected function 
diff($tabla_a$tabla_b)
    {
        
$tabla = array();

        foreach(
array_keys($tabla_a) as $key_registro)
        {
            
$comparado $this->comparar_registro($tabla_a[$key_registro], $tabla_b[$key_registro]);
            switch (
$comparado['estado']) {
                case 
'insertado':
                    
$comparado['estado'] = toba_personalizacion::registro_inserted;
                    
$tabla[$key_registro] = $comparado;
                    break;
                case 
'modificado':
                    
$comparado['estado'] = toba_personalizacion::registro_updated;
                    
$comparado['clave'] = $key_registro;
                    
$tabla[$key_registro] = $comparado;
                default:;
            }
        }

        return 
$tabla;
    }

    
/**
     * Devuelve los registros que aparecen en $tabla_b pero no en $tabla_a
     * @param array $tabla_a
     * @param array $tabla_b
     * @return array
     */
    
protected function diff_borrados($tabla_a$tabla_b)
    {
        
$tabla = array();

        foreach(
array_keys($tabla_b) as $key_registro) {
            
$comparado $this->comparar_registro($tabla_b[$key_registro], $tabla_a[$key_registro]);
            switch (
$comparado['estado']) {
                case 
'insertado':
                    
$comparado['estado'] = toba_personalizacion::registro_deleted;
                    
$comparado['clave'] = $key_registro;
                    
$tabla[$key_registro] = $comparado;
                    break;
            }
        }

        return 
$tabla;
    }

}

?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

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

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

--[ c99shell v. 2.1 [PHP 8 Update] [02.02.2022] maintained byC99Shell Github | Generation time: 0.6128 ]--