Ir para conteúdo

POWERED BY:

Arquivado

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

Mateus P.

Acrescentar em um formulário de cadastro uma validação para o cpf

Recommended Posts

Como faço para acrescentar em um formulário de cadastro validação de cpf, ou seja, para não cadastrar um cpf que já foi cadastrado.

 

Esse código aqui apenas diz se é válido ou não, gostaria que além disso não cadastra-se, por exemplo, CPFs iguais.

 

<script language="javascript">
function VerificaCPF () {
if (vercpf(document.frmcpf.cpf.value))
{document.frmcpf.submit();}else
{errors="1";if (errors) alert('CPF NÃO VÁLIDO');
document.retorno = (errors == '');}}
function vercpf (cpf)
{if (cpf.length != 11 || cpf == "00000000000" || cpf == "11111111111" || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf == "88888888888" || cpf == "99999999999")
return false;
add = 0;
for (i=0; i < 9; i ++)
add += parseInt(cpf.charAt(i)) * (10 - i);
rev = 11 - (add % 11);
if (rev == 10 || rev == 11)
rev = 0;
if (rev != parseInt(cpf.charAt(9)))
return false;
add = 0;
for (i = 0; i < 10; i ++)
add += parseInt(cpf.charAt(i)) * (11 - i);
rev = 11 - (add % 11);
if (rev == 10 || rev == 11)
rev = 0;
if (rev != parseInt(cpf.charAt(10)))
return false;
alert('O CPF INFORMADO É VÁLIDO.');return true;}
</script>
</head>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode utilizar uma biblioteca para estas tarefas - https://github.com/Respect/Validation

 

Primeiro você baixa e instala o composer - http://blog.thiagobelem.net/gerenciando-dependencias-com-o-composer

 

Depois abre a linha de comando (linux, windows, etc), digita isso (composer require respect/validation) de enter e baixe ele no seu projeto.

 

E por último é só fazer um require na pasta vendor criada pelo composer, instanciar e utilizar:

<?php

require('../../vendor/autoload.php');

use Respect\Validation\Validator as v;

echo v::cpf()->validate('111.111.111-11'); //false

A biblioteca possui muitos recursos de validação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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