• 0
Sign in to follow this  
alexpmj

Validação De Cpf

Question

galera estou com esse codigo de validação e ainda não consegui entende-lo, gostaria de ajuda de algum de vocês, tipow tenho que fazer algum form para ser feita a validação ?

<?

function NomeCPF($CPF)

{

if ( $fd = @fopen("http://www.receita.fazenda.gov.br/Scripts/srf/cpf/cpf2000.dll?Consultar&CPF=$CPF&indAutoatend=0","r") )

{

fread($fd,2229);

if ( !strcmp(fread($fd,3),"<b>") )

return fread($fd,60);

else

return 0;

fclose($fd);

}

}

?>

Share this post


Link to post
Share on other sites

11 answers to this question

Recommended Posts

  • 0

script retirado do Imasters

function CalculaCPF($CampoNumero)

  {

  $RecebeCPF=$CampoNumero;

  //Retirar todos os caracteres que não sejam 0-9

  $s="";

  for ($x=1; $x<=strlen($RecebeCPF); $x=$x+1)

  {

    $ch=substr($RecebeCPF,$x-1,1);

    if (ord($ch)>=48 && ord($ch)<=57)

    {

      $s=$s.$ch;

    }

  }

 

  $RecebeCPF=$s;

  if (strlen($RecebeCPF)!=11)

  {

    echo "<h1>&Eacute; obrigat&oacute;rio o CPF com 11 d&iacute;gitos</h1>";

  }

  else

    if ($RecebeCPF=="00000000000")

    {

      $then;

      echo "<h1>CPF Inválido</h1>";

    }

    else

    {

      $Numero[1]=intval(substr($RecebeCPF,1-1,1));

      $Numero[2]=intval(substr($RecebeCPF,2-1,1));

      $Numero[3]=intval(substr($RecebeCPF,3-1,1));

      $Numero[4]=intval(substr($RecebeCPF,4-1,1));

      $Numero[5]=intval(substr($RecebeCPF,5-1,1));

      $Numero[6]=intval(substr($RecebeCPF,6-1,1));

      $Numero[7]=intval(substr($RecebeCPF,7-1,1));

      $Numero[8]=intval(substr($RecebeCPF,8-1,1));

      $Numero[9]=intval(substr($RecebeCPF,9-1,1));

      $Numero[10]=intval(substr($RecebeCPF,10-1,1));

      $Numero[11]=intval(substr($RecebeCPF,11-1,1));

    $soma=10*$Numero[1]+9*$Numero[2]+8*$Numero[3]+7*$Numero[4]+6*$Numero[5]+5*

    $Numero[6]+4*$Numero[7]+3*$Numero[8]+2*$Numero[9];

    $soma=$soma-(11*(intval($soma/11)));

    if ($soma==0 || $soma==1)

    {

      $resultado1=0;

    }

    else

    {

      $resultado1=11-$soma;

    }

    if ($resultado1==$Numero[10])

    {

    $soma=$Numero[1]*11+$Numero[2]*10+$Numero[3]*9+$Numero[4]*8+$Numero[5]*7+$Numero[6]*6+$Numero[7]*5+

    $Numero[8]*4+$Numero[9]*3+$Numero[10]*2;

    $soma=$soma-(11*(intval($soma/11)));

    if ($soma==0 || $soma==1)

    {

      $resultado2=0;

    }

    else

    {

      $resultado2=11-$soma;

    }

    if ($resultado2==$Numero[11])

    {

      echo "<h1>CPF Válido</h1>";

    }

    else

    {

    echo "<h1>CPF Inválido</h1>";

    }

    }

    else

    {

    echo "<h1>CPF Inválido</h1>";

    }

  }

  }

Share this post


Link to post
Share on other sites
  • 0

muito bom o codigo, agora no caso tenho que fazer um form e chamar esse arquivo? seria isso?

então se coloca esse script numa pagina e coloca um nome por exemplo

valida_cpf.php

dai na pagina que você quer verificar o cpf se fgaz assim:

include "valida_cpf.php";

$cpf = $_POST["cpf"];

CalculaCPF($cpf);

Share this post


Link to post
Share on other sites
  • 0

show de bola mais olha so o erro que apareceu

PHP Warning: main(valida_cpf.php): failed to open stream: No such file or directory in C:\hshome\win20\viapalmas.com.br\teste_php\validarcpf.php on line 85 PHP Warning: main(valida_cpf.php): failed to open stream: No such file or directory in C:\teste_php\validarcpf.php on line 85 PHP Warning: main(): Failed opening 'valida_cpf.php' for inclusion (include_path='.;C:\PHP\pear') in C:\validarcpf.php on line 85

Share this post


Link to post
Share on other sites
  • 0

você colocou esse nome na pagina:

validarcpf.php

e você ta chamando pelo

valida_cpf.php

por isso ta dando erro

Share this post


Link to post
Share on other sites
  • 0

isso mesmo, olha o erro agora

PHP Fatal error: Cannot redeclare calculacpf() (previously declared in C:\validarcpf.php:3) in

C:\validarcpf.php on line 3

<?php

function CalculaCPF($CampoNumero)
  {
  $RecebeCPF=$CampoNumero;
  //Retirar todos os caracteres que não sejam 0-9
  $s="txtcpf";
  for ($x=1; $x<=strlen($RecebeCPF); $x=$x+1)
  {
    $ch=substr($RecebeCPF,$x-1,1);
    if (ord($ch)>=48 && ord($ch)<=57)
    {
      $s=$s.$ch;
    }
  }
  
  $RecebeCPF=$s;
  if (strlen($RecebeCPF)!=11)
  {
    echo "<h1>&Eacute; obrigat&oacute;rio o CPF com 14 d&iacute;gitos</h1>";
  }
  else
    if ($RecebeCPF=="00000000000")
    {
      $then;
      echo "<h1>CPF Inválido</h1>";
    }
    else
    {
      $Numero[1]=intval(substr($RecebeCPF,1-1,1));
      $Numero[2]=intval(substr($RecebeCPF,2-1,1));
      $Numero[3]=intval(substr($RecebeCPF,3-1,1));
      $Numero[4]=intval(substr($RecebeCPF,4-1,1));
      $Numero[5]=intval(substr($RecebeCPF,5-1,1));
      $Numero[6]=intval(substr($RecebeCPF,6-1,1));
      $Numero[7]=intval(substr($RecebeCPF,7-1,1));
      $Numero[8]=intval(substr($RecebeCPF,8-1,1));
      $Numero[9]=intval(substr($RecebeCPF,9-1,1));
      $Numero[10]=intval(substr($RecebeCPF,10-1,1));
      $Numero[11]=intval(substr($RecebeCPF,11-1,1));

    $soma=10*$Numero[1]+9*$Numero[2]+8*$Numero[3]+7*$Numero[4]+6*$Numero[5]+5*
    $Numero[6]+4*$Numero[7]+3*$Numero[8]+2*$Numero[9];
    $soma=$soma-(11*(intval($soma/11)));

    if ($soma==0 || $soma==1)
    {
      $resultado1=0;
    }
    else
    {
      $resultado1=11-$soma;
    }

    if ($resultado1==$Numero[10])
    {
    $soma=$Numero[1]*11+$Numero[2]*10+$Numero[3]*9+$Numero[4]*8+$Numero[5]*7+$Numero[6]*6+$Numero[7]*5+
    $Numero[8]*4+$Numero[9]*3+$Numero[10]*2;
    $soma=$soma-(11*(intval($soma/11)));

    if ($soma==0 || $soma==1)
    {
      $resultado2=0;
    }
    else
    {
      $resultado2=11-$soma;
    }
    if ($resultado2==$Numero[11])
    {
      echo "<h1>CPF Válido</h1>";
    }
    else
    {
    echo "<h1>CPF Inválido</h1>";
    }
    }
    else
    {
    echo "<h1>CPF Inválido</h1>";
    }
  }
  }

include "validarcpf.php";

$cpf = $_POST["cpf"];

CalculaCPF($cpf);

?>

cofere ai o codigo

Share this post


Link to post
Share on other sites
  • 0

validarcpf.php:

<?php

function CalculaCPF($CampoNumero)

{

$RecebeCPF=$CampoNumero;

//Retirar todos os caracteres que não sejam 0-9

$s="txtcpf";

for ($x=1; $x<=strlen($RecebeCPF); $x=$x+1)

{

   $ch=substr($RecebeCPF,$x-1,1);

   if (ord($ch)>=48 && ord($ch)<=57)

   {

     $s=$s.$ch;

   }

}

$RecebeCPF=$s;

if (strlen($RecebeCPF)!=11)

{

   echo "<h1>&Eacute; obrigat&oacute;rio o CPF com 14 d&iacute;gitos</h1>";

}

else

   if ($RecebeCPF=="00000000000")

   {

     $then;

     echo "<h1>CPF Inválido</h1>";

   }

   else

   {

     $Numero[1]=intval(substr($RecebeCPF,1-1,1));

     $Numero[2]=intval(substr($RecebeCPF,2-1,1));

     $Numero[3]=intval(substr($RecebeCPF,3-1,1));

     $Numero[4]=intval(substr($RecebeCPF,4-1,1));

     $Numero[5]=intval(substr($RecebeCPF,5-1,1));

     $Numero[6]=intval(substr($RecebeCPF,6-1,1));

     $Numero[7]=intval(substr($RecebeCPF,7-1,1));

     $Numero[8]=intval(substr($RecebeCPF,8-1,1));

     $Numero[9]=intval(substr($RecebeCPF,9-1,1));

     $Numero[10]=intval(substr($RecebeCPF,10-1,1));

     $Numero[11]=intval(substr($RecebeCPF,11-1,1));

   $soma=10*$Numero[1]+9*$Numero[2]+8*$Numero[3]+7*$Numero[4]+6*$Numero[5]+5*

   $Numero[6]+4*$Numero[7]+3*$Numero[8]+2*$Numero[9];

   $soma=$soma-(11*(intval($soma/11)));

   if ($soma==0 || $soma==1)

   {

     $resultado1=0;

   }

   else

   {

     $resultado1=11-$soma;

   }

   if ($resultado1==$Numero[10])

   {

   $soma=$Numero[1]*11+$Numero[2]*10+$Numero[3]*9+$Numero[4]*8+$Numero[5]*7+$Numero[6]*6+$Numero[7]*5+

   $Numero[8]*4+$Numero[9]*3+$Numero[10]*2;

   $soma=$soma-(11*(intval($soma/11)));

   if ($soma==0 || $soma==1)

   {

     $resultado2=0;

   }

   else

   {

     $resultado2=11-$soma;

   }

   if ($resultado2==$Numero[11])

   {

     echo "<h1>CPF Válido</h1>";

   }

   else

   {

   echo "<h1>CPF Inválido</h1>";

   }

   }

   else

   {

   echo "<h1>CPF Inválido</h1>";

   }

}

}

?>

a pagina que vai validar

pagina.php:

<?

include "validarcpf.php";

$cpf = $_POST["cpf];

CalculaCPF($cpf);

?>

e outra coisa se precisa criar um form com o campo nome cpf e enviar pra pagina.php aonde vai validar o cpf

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this