Olá galera!
Bem, mais uma vez eu por aqui. Desta irei mostrar uma função simples para validar CPF com o uso do PHP. O que proponho é uma função que envolve cálculos matemáticos e algumas filtragens para verificar se o CPF é valido ou não.Confiram o script.
No decorer do script ele filtra e realiza cálculos caso algum desses retorne um resultado inesperado é lançado um Exception que ao final retorna o erro ocorrido. Caso não retorne erro ele retorna uma mensagem que o CPF é valido.
//creditos a Jefferson Estanislau da Silva pela formula do calculo
//FUNCAO
function okCPF($cpf)
{
try
{
$proibidos = array('11111111111','22222222222','33333333333',
'44444444444','55555555555','66666666666','77777777777',
'88888888888','99999999999','00000000000', '12345678909');
$cpf = ereg_replace('[^0-9]', '', $cpf);
if(in_array($cpf, $proibidos))
{
throw new Exception('Erro: CPF Nulo !');
}
$a=0;
for($i=0; $i < 9; $i++)
{
$a += ($cpf[$i]*(10 - $i));
}
$b = ($a % 11);
$a = (($b > 1) ? (11 - $b) : 0);
if($a != $cpf[9])
{
throw new Exception('Erro: CPF Invalido !');
}
$a=0;
for ($i=0; $i < 10; $i++)
{
$a += ($cpf[$i]*(11 - $i));
}
$b= ($a % 11);
$a = (($b > 1) ? (11 - $b) : 0);
if( $a != $cpf[10])
{
throw new Exception('Erro: CPF Invalido !');
}
}
catch(Exception $e)
{
echo $e->getMessage();
}
if($cpf != '' && !isset($e))
{
echo 'OK ! CPF Valido !';
}
}
// EXEMPLO
okCPF($_POST['test']);
<form method="post"> <input name="test" type="text" /> <input type="submit" value="verificar" /> </form>
Até a proxima !
Att . Will Fernando
Ps: Dedicatoria:
Feliz aniversario Joane ! Felicidades e Sucesso ! s2
domingo,20 de dezembro de 2009
3660 Vizualizações
quero um cpf
18/05/2012 - 13:57, dedo duro chupador | #
quero um cpffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff /porque eu quero
Will Fernando trabalha profissionalmente como programador PHP, estuda por mania e escreve por hobby. =] Contato: rezer13@gmail.com
Nuvem de Tags
www.HelpMasters.com.br | Todos os direitos reservados Like Box