Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

josenilson

Validação de dados antes de cadastras

Recommended Posts

Olá Pessoal , 

 

Alguém  pode me ajudar com esse problema.
Tenho uma class controladora que estou gravando os dados no banco de dados , gostaria de fazer uma verificação para não duplicar os dados 
 onde eu faço essa verificação no método onde gravo os dados ?

 

Se possível poderia me dar um exemplo disso,  saliento que estou usando php com orientação a objeto . 

 

abaixo os métodos que estou usando na class uma para armazenar os dados e o outro gravo no banco . 

//Valida e cria os dados para realizar o cadastro
    private function setData() {
        $this->Data = array_map('strip_tags', $this->Data);
        $this->Data = array_map('trim', $this->Data);
        $this->Data['modelo'] = Check::Name($this->Data['modelo']);
        $this->Data['eixo'] = Check::Name($this->Data['eixo']);
        $this->Data['status'] = Check::Name($this->Data['status']);
        $this->Data['pedagio'] = Check::Name($this->Data['pedagio']);
        $this->Data['cavalo'] = Check::Name($this->Data['cavalo']);
        $this->Data['motorista'] = Check::Name($this->Data['motorista']);
        $this->Data['placacr1'] = Check::Name($this->Data['placacr1']);
        $this->Data['placacr2'] = Check::Name($this->Data['placacr2']);
        $this->Data['Filial_Atual'] = Check::Name($this->Data['Filial_Atual']);
        $this->Data['Filial_Destino'] = Check::Name($this->Data['Filial_Destino']);
    }

}


    //Cadastra a jornada no banco!
    private function Create() {

        $Create = new Create;
        $Create->ExeCreate(self::Entity, $this->Data);
        if ($Create->getResult()):
            $this->Result = $Create->getResult();

        endif;
    }

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
8 horas atrás, Santos_2015 disse:

Voce quer validar as informações enviadas com as informações do BD?

Sim nesse caso  quero verificar se já existe um registro salvo no banco com a mesma placa do cavalo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então é só montar um Select fazendo a busca no BD com o critério, se atender o critérios, irá mostrar, registro já existe na base... caso contrário irá inserir o registro, é bom fazer algumas verificações antes de comparar os registros, retirando os espaços(função trim()), verificar se o texto está em maiúsculo (uppercase). 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode colocar o campo, que não pode ser repetido, com um index do tipo unique, para que não permita inserção repetida.

 

Veja o link abaixo:

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por juniormatrix
      Olá
       
      Achei esse script aqui no fórum mesmo:
       
      $.validator.addMethod( "customEmail", function (value, element) { return this.optional(element) || /^[\w-\.]+@fulano\.com\.br$/i.test(value); }, "Por favor, insira um e-mail válido com o domínio @fulano.com.br" ); $("#formulario").validate({ ignore: ".ignore", rules: { empresa: { required: true }, nome: { required: true }, contato: { required: true }, celular: { required: true }, email: { required: true, email: true, customEmail: true }, }, }); Testei e funcionou perfeitamente, mas gostaria que liberasse mais e-mails válidos, ao invés de apenas um.

      Tem como fazer? 
       
      Se alguém puder ajudar, fico muito grato.
    • Por estanieski_poa
      Estou com um sistema antigo, desenvolvido em Delphi 7+Oracle10g.
       
      O sistema funciona corretamente, mas ele começou a ficar solcititando usuário e senha do Oracle quando realizo pesquisar ou inserções no sistema.
       
      Como desativo essa solicitação?
    • Por mamotinho
      Olá, estou com uma dúvida. gostaria de saber como faço para ocultar minhas informações quando alguém for pesquisar pelo meu site, vi que está mostrando meus dados.
       se alguem puder me ajudar fico grato.

    • Por Kefatif
      Prezados, boa tarde.
       
      Estou com uma dúvida:
       
      Estou precisando trazer dados do banco para uma tela de edição de cadastro, até aí tudo bem consegui fazer para os input através do código abaixo:
       
      <label style="width:16%;margin-left: 2%;">Data de Início<br> <input type="date" value="<?php echo $row["DATA_DISPENSACAO"] ?>" class="form-control" style="width:100%;"> </label>  
      Mas o meu select já traz o controle de peso do banco, eu gostaria que além dele trazer esses pesos que traga o salvo no cadastro de uma pessoa para visualização e edição.
       
      Segue abaixo o código do select como está:
       
      <label style="width:15%">Peso<b style="color:red">*</b><br> <select name="peso" class="form-control" required style="width:100%" value="<?php echo $row["DATA_TESTE"] ?>"> <option value="">Selecione</option> <?php $sqlpeso = "select distinct PESO from TESTE where ID_ESQUEMA = ".$row["ID_ESQUEMA"]; $resultpeso = mysqli_query($con, $sqlpeso); while ($rowpeso= mysqli_fetch_array($resultpeso)){ ?> <option value="<?php echo utf8_encode($rowpeso["PESO"]);?>" ><?php echo utf8_encode($rowpeso["PESO"]); ?></option> <?php } ?> </select> </label>  
      Meu banco é MYSQL.
       
      Agradeço desde já a todos pela ajuda.
       
      Abraço!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.