403Webshell
Server IP : 23.111.136.34  /  Your IP : 216.73.216.136
Web Server : Apache
System : Linux servidor.eurohost.com.br 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : meusitei ( 1072)
PHP Version : 5.6.40
Disable Function : show_source, system, shell_exec, passthru, proc_open
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/meusitei/public_html/painel/classes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/meusitei/public_html/painel/classes/class-TutsupDB.php
<?php
/**
 * TutsupDB - Classe para gerenciamento da base de dados
 *
 * @package TutsupMVC
 * @since 0.1
 */
class TutsupDB
{
        //public $login_db_name = 'includec_msi';
        
	/** DB properties */
        
	public $host      = 'localhost', // Host da base de dados
	       $db_name   = DB_NAME,    // Nome do banco de dados
	       $password  = DB_PASSWORD,          // Senha do usuário da base de dados
	       $user      = DB_USER,      // Usuário da base de dados
	       $charset   = 'utf8',      // Charset da base de dados
	       //$pdo       = null,        // Nossa conexão com o BD
	       $error     = null,        // Configura o erro
	       $debug     = true,       // Mostra todos os erros
	       $last_id   = null;        // Último ID inserido
	
	/**
	 * Construtor da classe
	 *
	 * @since 0.1
	 * @access public
	 * @param string $host    
	 * @param string $db_name
	 * @param string $password
	 * @param string $user
	 * @param string $charset
	 * @param string $debug
	 */
	public function __construct(
		$host     = null,
		$db_name  = null,
		$password = null,
		$user     = null,
		$charset  = null,
		$debug    = null
	) {
	
		// Configura as propriedades novamente.
		// Se você fez isso no início dessa classe, as constantes não serão
		// necessárias. Você escolhe...
		$this->host     = defined( 'HOSTNAME'    ) ? HOSTNAME    : $this->host;
		$this->db_name  = defined( 'DB_NAME'     ) ? DB_NAME     : $this->db_name;
		$this->password = defined( 'DB_PASSWORD' ) ? DB_PASSWORD : $this->password;
		$this->user     = defined( 'DB_USER'     ) ? DB_USER     : $this->user;
		$this->charset  = defined( 'DB_CHARSET'  ) ? DB_CHARSET  : $this->charset;
		$this->debug    = defined( 'DEBUG'       ) ? DEBUG       : $this->debug;
	
		// Conecta
		$this->connect();
		
	} // __construct
	
	/**
	 * Cria a conexão PDO
	 *
	 * @since 0.1
	 * @final
	 * @access protected
	 */
	final protected function connect() {
	
		/* Os detalhes da nossa conexão PDO */
		$pdo_details  = "mysql:host={$this->host};";
		$pdo_details .= "dbname={$this->db_name};";
		$pdo_details .= "charset={$this->charset};";
		 
		// Tenta conectar
		try {
                        
			$this->pdo = new PDO($pdo_details, $this->user, $this->password);
			
			// Verifica se devemos debugar
			if ( $this->debug === true ) {
			
				// Configura o PDO ERROR MODE
				$this->pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );
				
			}
			
			// Não precisamos mais dessas propriedades
			unset( $this->host     );
			unset( $this->db_name  );
			unset( $this->password );
			unset( $this->user     );
			unset( $this->charset  );
		
		} catch (PDOException $e) {
			
			// Verifica se devemos debugar
			if ( $this->debug === true ) {
			
				// Mostra a mensagem de erro
				echo "Erro: " . $e->getMessage();
				
			}
			
			// Kills the script
			die();
		} // catch
	} // connect
	
	/**
	 * query - Consulta PDO
	 *
	 * @since 0.1
	 * @access public
	 * @return object|bool Retorna a consulta ou falso
	 */
        

	public function query( $stmt, $data_array = null ) {
                $query = $this->pdo->prepare( $stmt );
                
		@$check_exec = $query->execute( $data_array );
		// IMPORTANTE - >>>>>> SEMPRE INSERIR NA LINHA ACIMA UM "@" NO INICIO DA LINHA PARA NÃO RETORNAR ERROS. <<<<<<- IMPORTANTE
                
		// Verifica se a consulta aconteceu
		if ( $check_exec ) {
			// Retorna a consulta
			return $query;
			
		} else {
		
			// Configura o erro
			$error       = $query->errorInfo();
			$this->error = $error[2];
			
			// Retorna falso
			return false;
			
		}
	}
	
	/**
	 * insert - Insere valores
	 *
	 * Insere os valores e tenta retornar o último id enviado
	 *
	 * @since 0.1
	 * @access public
	 * @param string $table O nome da tabela
	 * @param array ... Ilimitado número de arrays com chaves e valores
	 * @return object|bool Retorna a consulta ou falso
	 */
	public function insert( $table ) {
		// Configura o array de colunas
		$cols = array();
		
		// Configura o valor inicial do modelo
		$place_holders = '(';
		
		// Configura o array de valores
		$values = array();
		
		// O $j will assegura que colunas serão configuradas apenas uma vez
		$j = 1;
		
		// Obtém os argumentos enviados
		$data = func_get_args();
		
		// É preciso enviar pelo menos um array de chaves e valores
		if ( ! isset( $data[1] ) || ! is_array( $data[1] ) ) {
			return;
		}
		
		// Faz um laço nos argumentos
		for ( $i = 1; $i < count( $data ); $i++ ) {
		
			// Obtém as chaves como colunas e valores como valores
			foreach ( $data[$i] as $col => $val ) {
			
				// A primeira volta do laço configura as colunas
				if ( $i === 1 ) {
					$cols[] = "`$col`";
				}
				
				if ( $j <> $i ) {
					// Configura os divisores
					$place_holders .= '), (';
				}
				
				// Configura os place holders do PDO
				$place_holders .= '?, ';
				
				// Configura os valores que vamos enviar
				$values[] = $val;
				
				$j = $i;
			}
			
			// Remove os caracteres extra dos place holders
			$place_holders = substr( $place_holders, 0, strlen( $place_holders ) - 2 );
		}
		
		// Separa as colunas por vírgula
		$cols = implode(', ', $cols);
		
		// Cria a declaração para enviar ao PDO
		$stmt = "INSERT INTO `$table` ( $cols ) VALUES $place_holders) ";
		
		// Insere os valores
		$insert = $this->query( $stmt, $values );
		// Verifica se a consulta foi realizada com sucesso
		if ( $insert ) {
			
			// Verifica se temos o último ID enviado
			if ( method_exists( $this->pdo, 'lastInsertId' ) 
				&& $this->pdo->lastInsertId() 
			) {
				// Configura o último ID
				$this->last_id = $this->pdo->lastInsertId();
			}
			
			// Retorna a consulta
			return $insert;
		}
		
		// The end :)
		return;
	} // insert
	
	/**
	 * Update simples
	 *
	 * Atualiza uma linha da tabela baseada em um campo
	 *
	 * @since 0.1
	 * @access protected
	 * @param string $table Nome da tabela
	 * @param string $where_field WHERE $where_field = $where_field_value
	 * @param string $where_field_value WHERE $where_field = $where_field_value
	 * @param array $values Um array com os novos valores
	 * @return object|bool Retorna a consulta ou falso
	 */
	public function update( $table, $where_field, $where_field_value, $values ) {
		// Você tem que enviar todos os parâmetros
		
                //$linha_dup = mysql_query("SELECT * FROM imoveis WHERE id_imovel = '1' LIMIT 1") or die(mysql_error()); 
                //$linha_dup = mysql_fetch_array($sql_dup);
                         
                //$sql_duplica_confirmar = mysql_query($sql_duplica);
                
                if ( empty($table) || empty($where_field) || empty($where_field_value)  ) {
			return;
		}
		
                // Começa a declaração
		$stmt = " UPDATE `$table` SET ";
		
		// Configura o array de valores
		$set = array();
		
		// Configura a declaração do WHERE campo=valor
		$where = " WHERE `$where_field` = ? ";
		
		// Você precisa enviar um array com valores
		if ( ! is_array( $values ) ) {
			return;
		}
		
		// Configura as colunas a atualizar
		foreach ( $values as $column => $value ) {
			$set[] = " `$column` = ?";
		}
		
		// Separa as colunas por vírgula
		$set = implode(', ', $set);
		
		// Concatena a declaração
		$stmt .= $set . $where;
		
		// Configura o valor do campo que vamos buscar
		$values[] = $where_field_value;
		
		// Garante apenas números nas chaves do array
		$values = array_values($values);
				
		// Atualiza
		$update = $this->query( $stmt, $values );
		// Verifica se a consulta está OK
		if ( $update ) {
			// Retorna a consulta
                    return $update;
		}
		
		// The end :)
		return;
	} // update

	/**
	 * Delete
	 *
	 * Deleta uma linha da tabela
	 *
	 * @since 0.1
	 * @access protected
	 * @param string $table Nome da tabela
	 * @param string $where_field WHERE $where_field = $where_field_value
	 * @param string $where_field_value WHERE $where_field = $where_field_value
	 * @return object|bool Retorna a consulta ou falso
	 */
	public function delete( $table, $where_field, $where_field_value ) {
		// Você precisa enviar todos os parâmetros
		if ( empty($table) || empty($where_field) || empty($where_field_value)  ) {
			return;
		}
                                
		$where = "";
		// Inicia a declaração
		$stmt = " DELETE FROM `$table` ";
                
                // Configura a declaração WHERE campo=valor
		$where = " WHERE `$where_field` = ? ";
                
		// Concatena tudo
		$stmt .= $where;
		
		// O valor que vamos buscar para apagar
		$values = array( $where_field_value );

		// Apaga
		$delete = $this->query( $stmt, $values );
                
		if ( $delete ) {
                        
                        if(@$_GET["del_lang"]){
                        $stmt2 = " DELETE FROM lang "; 
                        
                        // Configura a declaração WHERE campo=valor
                        $where2 = " WHERE id != '' AND local = 'imoveis' AND id_lang = '".$where_field_value."'";
                
                        // Concatena tudo
                        $stmt2 .= $where2;
		
                        // Apaga
                        $delete2 = $this->query( $stmt2 );
                        }
			// Retorna a consulta
			return $delete;
		}
		
		// The end :)
		return;
	} // delete
	
        public function duplicar( $table, $where_field, $where_field_value ) {
		// Você precisa enviar todos os parâmetros
                
            //$linha_dup = $this->acaoglobal(array('imoveis', 'id_imovel'), 'get', '5'); //Envio de dados do Imovel
            //$sql_dup = mysql_query("SELECT * FROM ".$table." WHERE ".$where_field." = ".$where_field_value.""); 
            //$sql_dup = mysql_query("SELECT * FROM imoveis WHERE id_imovel = '5'");
            
            //$sql_cons = "SELECT * FROM imoveis WHERE id_imovel='5'";
            //$sql_cons = "UPDATE imoveis SET negocio='Temporada' WHERE id_imovel='5'";
            //$sql_dup = $this->query($sql_cons);
            
            //$linha_dup = mysql_fetch_assoc($sql_dup);
            //$linha_dup2 = $where_field_value['id_imovel']." | ".$where_field_value['id_cliente']." | ".$where_field_value['situacao'];
            //$sql_duplica = "UPDATE imoveis SET negocio='Locação' WHERE id_imovel='5'";
            //$teste = "123";
            
            
            
            $coluna = '';
            $info = '';
            foreach($where_field_value as $key => $value){
                if(($key!='update')&&($key!='updateimob')&&($key!='id_imovel')){
                if($key=='datacriacao'){
                    $value = date('Y-m-d');
                }
                if (!is_numeric($key)) { 
                if($coluna!=''){ $coluna = $coluna.', '; }
                $coluna = $coluna.$key;
                if($info!=''){ $info = $info.', '; }
                $info = $info."'".$value."'";
                echo $key.': '.$value.' // ';
                }
                }
            }
            
            $sql_duplica = "INSERT INTO imoveis (".$coluna.") VALUES (".$info.")";
            
            $sql_duplica = str_replace('"', '\"', $sql_duplica);
            
            $sql_duplica_lang = 'UPDATE lang SET local = "imoveis" WHERE id_lang = "'.$where_field_value['id_imovel'].'" AND local = "imoveis_temp"';
            
            // CAMPOS DE DATAS DEVEM SER ENVIADOS COM ALGUMA INFORMAÇÃO;
            
            // transacao_data;
            // data_base_expirar;
            ///////
            /*
            $sql_duplica = "INSERT INTO imoveis ("
                    . "id_cliente, naodivulgar_valor, naodivulgar_corretor, valor_iptu_periodo, pl_corretor, anoconstrucao, anoreforma, cep_complemento, negocio, tipo, subtipoimovel, situacao, id_responsavel, criado_por, cod_referencia, averbada, escritura"
                    . ", exclusiva, ocupacao, cep, cep_pais, cep_logradouro, cep_numero, cep_bairro, cep_cidade, cep_estado, latlng, ocultarend, googlemaps"
                    . ", dormitorio, banheiro, suite, cozinha, garagem, boxgaragem, andar, posicao, orientacao, areas, areas_categoria, detalhes, proximidades"
                    . ", valor, valor_categoria, status, taxas, altatemporada, baixatemporada, condicoes, observacao, disponibilidadealta, disponibilidadebaixa, publicacao_destaque"
                    . ", meta, portais, compartilhar, datacriacao, descricaodoimovel, informacaodoimovel, video, fotos, fotos_legenda, nomedoempreendimento, datalancamento, previsaoentrega"
                    . ", empreendimentosdetalhes, acompanhe, empreendimentovalores, unidade, icone, valor_condominio, valor_situacao, valor_iptu, valor_negociar, taxas_altatemporada"
                    . ", ciclo_baixatemporada, taxas_baixatemporada, naodivulgar_baixaalta, naodivulgar_valor, ocultarmap, exatomap, id_angariador, unitmone, comissao"
                    . ") VALUES ("
                    . "'".$where_field_value['id_cliente']."',".$where_field_value['naodivulgar_valor']."',".$where_field_value['naodivulgar_corretor']."', ".$where_field_value['valor_iptu_periodo']."', ".$where_field_value['pl_corretor']."', ".$where_field_value['anoconstrucao']."', ".$where_field_value['anoreforma']."', ".$where_field_value['cep_complemento']."', '".$where_field_value['negocio']."', '".$where_field_value['tipo']."'"
                    . ", '".$where_field_value['subtipoimovel']."', '".$where_field_value['situacao']."', '".$where_field_value['id_responsavel']."'"
                    . ", '".$where_field_value['criado_por']."', '".$where_field_value['cod_referencia']."', '".$where_field_value['averbada']."', '".$where_field_value['escritura']."'"
                    . ", '".$where_field_value['exclusiva']."', '".$where_field_value['ocupacao']."', '".$where_field_value['cep']."', '".$where_field_value['cep_pais']."'"
                    . ", '".$where_field_value['cep_logradouro']."', '".$where_field_value['cep_numero']."', '".$where_field_value['cep_bairro']."', '".$where_field_value['cep_cidade']."'"
                    . ", '".$where_field_value['cep_estado']."', '".$where_field_value['latlng']."', '".$where_field_value['ocultarend']."', '".$where_field_value['googlemaps']."'"
                    . ", '".$where_field_value['dormitorio']."', '".$where_field_value['banheiro']."', '".$where_field_value['suite']."', '".$where_field_value['cozinha']."'"
                    . ", '".$where_field_value['garagem']."', '".$where_field_value['boxgaragem']."', '".$where_field_value['andar']."', '".$where_field_value['posicao']."'"
                    . ", '".$where_field_value['orientacao']."', '".$where_field_value['areas']."', '".$where_field_value['areas_categoria']."', '".$where_field_value['detalhes']."'"
                    . ", '".$where_field_value['proximidades']."', '".$where_field_value['valor']."', '".$where_field_value['valor_categoria']."', '".$where_field_value['status']."'"
                    . ", '".$where_field_value['taxas']."', '".$where_field_value['altatemporada']."', '".$where_field_value['baixatemporada']."', '".$where_field_value['condicoes']."'"
                    . ", '".$where_field_value['observacao']."', '".$where_field_value['disponibilidadealta']."', '".$where_field_value['disponibilidadebaixa']."', '".$where_field_value['publicacao_destaque']."'"
                    . ", '".$where_field_value['meta']."', '".$where_field_value['portais']."', '".$where_field_value['compartilhar']."', '".$where_field_value['datacriacao']."'"
                    . ", '".$where_field_value['descricaodoimovel']."', '".$where_field_value['informacaodoimovel']."', '".$where_field_value['video']."', '".$where_field_value['fotos']."'"
                    . ", '".$where_field_value['fotos_legenda']."', '".$where_field_value['nomedoempreendimento']."', '".$where_field_value['datalancamento']."', '".$where_field_value['previsaoentrega']."'"
                    . ", '".$where_field_value['empreendimentosdetalhes']."', '".$where_field_value['acompanhe']."', '".$where_field_value['empreendimentovalores']."', '".$where_field_value['unidade']."'"
                    . ", '".$where_field_value['icone']."', '".$where_field_value['valor_condominio']."', '".$where_field_value['valor_situacao']."', '".$where_field_value['valor_iptu']."', '".$where_field_value['valor_negociar']."', '".$where_field_value['taxas_altatemporada']."'"
                    . ", '".$where_field_value['ciclo_baixatemporada']."', '".$where_field_value['taxas_baixatemporada']."', '".$where_field_value['naodivulgar_baixaalta']."', '".$where_field_value['naodivulgar_valor']."', '".$where_field_value['ocultarmap']."', '".$where_field_value['exatomap']."'"
                    . ", '".$where_field_value['id_angariador']."', '".$where_field_value['unitmone']."', '".$where_field_value['comissao']."'"
                    . ")";
            */
            
            $this->query( $sql_duplica_lang );
            $sql_duplica_confirmar = $this->query( $sql_duplica );
            
            /*$sql_get = "SELECT * FROM imoveis ORDER BY id_imovel DESC LIMIT 1";
            
            $sql_duplica_get = $this->query( $sql_get );
            
            $sql_up = "UPDATE imoveis SET valor = '900,00' WHERE id_imovel = '".$sql_duplica_get['id_imovel']."'";
            
            $sql_up_fim = $this->query( $sql_up );
            */

            //return $sql_duplica_confirmar->fetchAll();
            
            /*$query = $this->db->query('SELECT * FROM `imoveis` ORDER BY id_imovel LIMIT 1');
            if (!$query) {
                return array();
            }
            return $query->fetchAll();*/
            
            //return $sql_duplica_confirmar;
            
            
	}
        
}

Youez - 2016 - github.com/yon3zu
LinuXploit