Notice: Undefined variable: in_errors - PHP

17/08/2017

0

PHP

Boa Tarde Amigos, sei que minha váriavel in_erros não está definida, mas não estou conseguindo resolver isso de forma alguma, poderiam analisar o código abaixo e me ajudar por favor ? Pois preciso muito disso.

class DDDataValidation
{
    private $v_data_values;
    private $v_data_itens_object;

    //constantes de charset
    const UTF_8 = 1;
    const ISO_8859_1 = 2;
    
    //constantes para formato de data
    const DATE_EN = 1;
    const DATE_BR = 2;
    
    //constantes de erro
    const ErrorEmpty = 1;
    const ErrorNumeric = 2;
    const ErrorMaximum = 3;
    const ErrorMinimum = 4;
    const ErrorCPF = 5;
    const ErrorEmail = 6;
    const ErrorDate = 7;
    
    function __construct()
    {
        $this->v_data_values = array();
        $this->v_data_itens_object = array();
    }
    
    /**
    * Adiciona dados para ser validados
    * 
    * @param string $st_alias - Alias definido pelo desenvolvedor para fazer referencia ao dado
    * @param mixed $mx_data - Dado a ser validado
    */
    public function setData($st_alias,$st_value)
    {
        $this->v_data_values[$st_alias] = $st_value;
        $this->v_data_itens_object[$st_alias] = new DDDataValidationItem($st_value);
    }
    
    /**
    * Retorna um objeto contendo dados a serem validados
    * 
    * @param string $st_alias - Alias definido pelo desenvolvedor para fazer referencia ao dado
    * @return DDDataValidationItem
    * @throws DDException
    */
    public function getData($st_alias)
    {
        if(isset($this->v_data_itens_object[$st_alias]))
            return $this->v_data_itens_object[$st_alias];
        else
            return new DDDataValidationItem();
    }

    /**
    * Retorna os dados sem nenhuma modificação
    * 
    * @param string $st_alias - Alias definido pelo desenvolvedor para fazer referencia aos dados
    * @throws DDException
    */
    public function getOriginal($st_alias)
    {
        if(isset($v_campos[$st_alias]))
            return $v_data_values[$st_alias];
        else
            throw new DDException('Alias '.$st_alias.' not found');
    }
    
    /**
    * Retorna a quantidade de erros, idenpendente
    * do alias referente ao campo
    * 
    * @return integer
    */
    public function countErrors()
    {
        foreach($this->v_data_itens_object AS $data_objects){
            if(!empty($data_objects)){
                $in_errors += $data_objects->countErrors();
                return $in_errors;
            }
        }
    }

    
}


class DDDataValidationItem
{
    private $mx_value;
    private $v_error;
    private $v_boolean_error;
    
    /**
    * O valor do dado pode ser definidos ou não
    * 
    * @param mixed $mx_value
    */
    function __construct($mx_value = null)
    {
        if($mx_value != null)
            $this->set($mx_value);
    }
    
    
    /**
    * Recebe o dado à ser validado
    * 
    * @param mixed $mx_value
    */
    public function set($mx_value)
    {
        $this->mx_value = $mx_value;
    }
    
    /**
    * Retorna o dado validado
    * 
    * @return mixed
    */
    public function get()
    {
        return $this->mx_value;
    }
    
    /**
    * Retorna, se houver, o erro referente ao alias de verficação
    * 
    * @param flag $mx_erro_code
    *   Use DDDataValidation::ErrorEmpty - retorna o erro de preenchimento do campo
    *       DDDataValidation::ErrorNumeric - retorna o erro da validação de numero
    *       DDDataValidation::ErrorMaximum - retorna o erro da validação de quantidade de caracteres
    *       DDDataValidation::ErrorMinimum - retorna o erro da validação de quantidade de caracteres
    *       DDDataValidation::ErrorCPF - retorna o erro da validação de CPF 
    *       DDDataValidation::ErrorEmail - retorna o erro da validação de e-mail
    *       DDDataValidation::ErrorDate - retornar o erro da validação de data  
    *
    * @return string
    */
    public function getErrorMsg($mx_erro_code)
    {
        if(isset($this->v_error[$mx_erro_
#código
))
            return $this->v_error[$mx_erro_
#código
;
    }
    
    /**
    * Retorna o último erro ocorrido
    * 
    * @return string
    */
    public function getLastErrorMsg()
    {
        $st_message = end($this->v_error);
        if(isset($st_message))
            return $st_message;
    }
    
    
    /**
    * Retorna o primeiro erro ocorrido
    * 
    * @return string
    */
    public function getFirstErrorMsg()
    {
        if(isset($this->v_error))
        {
            $st_message = reset($this->v_error);
            if(isset($st_message))
                return $st_message;
        }   
    }
    
    
    /**
    * Retorna positivo se houver erro e nega
    */
    public function getError()
    {
        if(isset($this->v_boolean_error[$mx_erro_
#código
))
            return $this->v_boolean_error[$mx_erro_
#código
;
    }
    
    /**
    * Retorna todos os erros, separados apenas pelo delimitador
    * 
    * @param character $ch_delimiter - Delimitador
    * @return string
    */
    public function getAllErrosMessages($ch_delimiter = ' - ')
    {
        foreach($this->v_error AS $st_error)
            if(isset($st_all_error))
                $st_all_error .= $ch_delimiter.$st_error;
            else
                $st_all_error .= $st_error;
        return $st_all_error;   
    }
    
    /**
    * Retorna a quantidade de erros gerados para aquele campo
    * 
    * @return integer
    */
    public function countErrors()
    {
        return count($this->v_error);
    }
    
    
    /************************/
    /* Métodos de restrição */
    /************************/
    
    /**
    * Verifica se o dado passado está vazio
    * 
    * @param string $st_message - Mensagem de erro
    * @param mixed $mx_error_code - Código de erro, pode ser personalizado
    * @return DDDataValidationItem
    */
    public function isEmpty( $st_message = null, $mx_error_code = DDDataValidation::ErrorEmpty )
    {
        $mx_value = $this->trim()->get();
        if(!(strlen($mx_value) > 0))
        {
            if($st_message != null)
                $this->v_error[$mx_error_
#código
 = $st_message;
            $this->v_boolean_error[$mx_error_
#código
 = TRUE;
        }       
        return $this;   
    }

    /**
    * Converte todos os caractéres especiais em suas
    * respectivas entidades HTML
    * 
    * @return DDDataValidationItem
    */
    public function htmlEntities()
    {
        $this->mx_value = htmlentities($this->mx_value);
        return $this;
    }

    /**
    * Converte entidades HTML em seus respectivos
    * caracteres especiais
    * 
    * @return DDDataValidationItem
    */
    public function htmlEntitiesDecode()
    {
        $this->mx_value = html_entity_decode($this->mx_value);
        return $this;
    }
    
    /**
    * Converte characteres de final de linha (\\\\n) para
    * para a tag <br/> do HTML
    * 
    * @return DDDataValidationItem
    */
    public function nlToBr()
    {
        $this->mx_value = nl2br($this->mx_value);
        return $this;
    }
Matheus Delre

Matheus Delre

Responder

Posts

30/08/2017

Alex William

Erros "Notice" são somente avisos da pagina, não interferem na execução da mesma. Aconselho mudar seu php.ini para não mostrar esses erros ou colocar um...

error_reporting(E_ALL^E_NOTICE);


no inicio das paginas, pra não mostrar os erros NOTICE da pagina. Porque esse erro não interfere em nada.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar