//$cnpj = '61.427.258/0007-59';
//$cnpj = '';
$cnpj = ereg_replace("[^0-9]","",$cnpj);
echo '
TAMANHO DO CAMPO = '.strlen($cnpj).'
';
function verificaCNPJ($cnpj) {
if (strlen($cnpj) <> 14) return 0;
$soma1 = (
$cnpj[0] * 5) +
($cnpj[1] * 4) +
($cnpj[2] * 3) +
($cnpj[3] * 2) +
($cnpj[4] * 9) +
($cnpj[5] * 8) +
($cnpj[6] * 7) +
($cnpj[7] * 6) +
($cnpj[08] * 5) +
($cnpj[09] * 4) +
($cnpj[10] * 3) +
($cnpj[11] * 2);
$resto = $soma1 % 11;
$digito1 = $resto < 2 ? 0 : 11 - $resto;
//echo"digito1:<$digito1>
"; //ativando esta linha, vc vera o digito1 correto
$soma2 = ($cnpj[0] * 6) +
($cnpj[1] * 5) +
($cnpj[2] * 4) +
($cnpj[3] * 3) +
($cnpj[4] * 2) +
($cnpj[5] * 9) +
($cnpj[6] * 8) +
($cnpj[7] * 7) +
($cnpj[08] * 6) +
($cnpj[09] * 5) +
($cnpj[10] * 4) +
($cnpj[11] * 3) +
($cnpj[12] * 2);
$resto = $soma2 % 11;
$digito2 = $resto < 2 ? 0 : 11 - $resto;
//echo"digito2:<$digito2>
";//ativando esta linha, vc vera o digito2 correto
//echo"digitos informados 1:<$cnpj[12]>2:<$cnpj[13]>
";//ativando esta linha, vc vera podera podera visualizar os digitos informados
return (($cnpj[12] == $digito1) && ($cnpj[13] == $digito2));
}
if ($cnpj=="")
{
echo "campo em branco, digite um CNPJ válido.
";
}
if (!verificaCNPJ($cnpj))
{
echo "Número Inválido, por favor digite um CNPJ válido.
";
}
ELSE
{
echo "tudo certo";
}
?>