Ir para conteúdo

POWERED BY:

Arquivado

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

sanchesjs

checagem CPF , alguem sabe?

Recommended Posts

Tenho o seguinte formulario : " simples "

 

<html>

<body>

<form name="form1" method="post" action="Cap7Lab13.php">

Digite o numero do seu CPF (sem pontuação) : <input type="text" name="txtCPF" size="20"><br><br>

<input type="submit" value="Enviar">

</form>

</body>

</html>

 

 

e o seguinte script para vereficação do CPF :

 

<html>

<body>

<?php

function vCPF($cpf) {

 

 

$n[1] = substr($cpf,0,1);

$n[2] = substr($cpf,1,1);

$n[3] = substr($cpf,2,1);

$n[4] = substr($cpf,3,1);

$n[5] = substr($cpf,4,1);

$n[6] = substr($cpf,5,1);

$n[7] = substr($cpf,6,1);

$n[8] = substr($cpf,7,1);

$n[9] = substr($cpf,8,1);

$n[10] = substr($cpf,9,1);

$n[11] = substr($cpf,10,1);

 

$soma1=($n[1]*10)+($n[2]*9)+($n[3]*8)+($n[4]*7)+($n[5]*6)+($n[6]*5)+($n[7]*4)+($n[8]*3)+($n[9]*2);

 

$dgt1=11-($soma1%11);

 

if ($dgt1==10 or $dgt1==11)

 

{

 

$dgt1=0;

 

}

 

$soma2 = ($n[1]*11)+($n[2]*10)+($n[3]*9)+($n[4]*8)+($n[5]*7)+($n[6]*6)+($n[7]*5)+($n[8]*4)+($n[9]*3)+($dgt1 * 2);

 

$dgt2=11-($soma2%11);

 

if ($dgt2 == 10 or $dgt2 ==11)

{

 

$dgt2 = 0;

 

}

 

if ($dgt1<>$n[10] or $dgt2<>$n[11])

{

 

$erro=true;

 

}

 

else

 

{

 

$erro=false;

 

}

 

return $erro;

 

}

 

if (vCPF(txtCPF))

{

 

echo "Numero do CPF invalido <br>";

echo "<a href=\"Cap7Lab13.htm\"> Clique aqui para corrigir o CPF </a>"

exit;

}

echo " O CPF está correto";

?>

</body>

</html>

 

 

Mas nao esta funcionando . Estou em duvida na linha vermelha .... ja tentei if (vCPF($_post[txtCPF])) mas nao deu certo .... se alguem tiver uma soluçao ,..

 

 

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode não ter dado certo, mas é modo correto. $_POST[nome_var];ok sobre validação o ultimo artigo do colunista do imasters é sobre isso da uma olhada na home , ok !

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa esse cogigo ak e ve se funciona!!---------------------------------------------------<?if($_POST["verOK"]) { $cpf = $_POST["cpf"]; if(!is_numeric($cpf)) { $status = false; } else { if( ($cpf == '11111111111') || ($cpf == '22222222222') || ($cpf == '33333333333') || ($cpf == '44444444444') || ($cpf == '55555555555') || ($cpf == '66666666666') || ($cpf == '77777777777') || ($cpf == '88888888888') || ($cpf == '99999999999') || ($cpf == '00000000000') ) { $status = false; } else { $dv_informado = substr($cpf, 9,2); for($i=0; $i<=8; $i++) { $digito[$i] = substr($cpf, $i,1); } $posicao = 10; $soma = 0; for($i=0; $i<=8; $i++) { $soma = $soma + $digito[$i] * $posicao; $posicao = $posicao - 1; } $digito[9] = $soma % 11; if($digito[9] < 2) { $digito[9] = 0; } else { $digito[9] = 11 - $digito[9]; } $posicao = 11; $soma = 0; for ($i=0; $i<=9; $i++) { $soma = $soma + $digito[$i] * $posicao; $posicao = $posicao - 1; } $digito[10] = $soma % 11; if ($digito[10] < 2) { $digito[10] = 0; } else { $digito[10] = 11 - $digito[10]; } $dv = $digito[9] * 10 + $digito[10]; if ($dv != $dv_informado) { $status = false; } else $status = true; }}}?><html><head><title> </title></head><body bgcolor="#FFFFFF"><form name="frm_cpf" action="<? echo $_SERVER["PHP_SELF"];?>" method="post">CPF: <input type="text" name="cpf" maxlength="11"><input type="submit" value="Verificar" name="btnValidar"><input type="hidden" name="verOK" value="1"></form><?if($_POST["verOK"]) { echo "<br><font face='Arial' size='2' color='#FF0000'><b>Resultado:</b></font><br><br>"; if($status) echo "<b>O CPF $cpf é VERDADEIRO</b>"; else echo "<b>O CPF $cpf é INVÁLIDO</b>";}//FECHA IF?></body></html>------------------------------------------------------------------------------

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera Essa verificação de CPF que tem lah na sessao de PHP funciona, agora surgiu uma dúvida. Tenho uma pagina cadastro.php onde tem todos os campos para o usuario preencher só que essa pagina tem um form que vai para a pagina validar.php entaum como irei conseguir utilizar isso que foi colocado no artigo se o cara lah manda o form para: <form name="frm_cpf" action="<? echo $_SERVER["PHP_SELF"];?>" method="post"> Num to sabendo como fazer para conseguir verificar o CPF, tipow tem como eu utilizar aquela verificação no meu script? Espero que alguem ajude, vlws

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom cara, eu acho que agora você tem que "tentar" quebrar a cabeça um pouco e adaptar o codigo que achou para sua necessidade.Faz uma função para checar ou algo parecido, de maneira que sirva em qualquer aplicação, bastando que se passe como parâmetro o número do cpf. B)

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.