Ir para conteúdo
Fórum Script Brasil
  • 0

Validar Cnpj E Direcionar Para Outra Página


Tricotando.Net

Pergunta

Prezados colegas, em meu primeiro post gostaria de ajuda para que posso obter um formulário que valide CNPJ e, caso seja válido, direcione para outra página. Assim somente pessoas jurídicas teriam acesso a determinado conteúdo. Encontrei este código aqui, mas ele somente valida o CNPJ e mais nada. Queria implementá-lo mas não manjo muito de programação e não encontrei nada similar na net. :blink:

<html>
<head>
<title>Valida CNPJ</title>
<style>
body, p, div, td, input, select, textarea {
font-family: verdana,arial,helvetica;
font-size:10px;
color:#27364D;
text-decoration: none;
}
h1 {
font-family: verdana,arial,helvetica;
font-size:30px;
color:#27364D;
text-decoration: none;
}
input,textarea {
@if (is.ie) {
color: #efefef; background-color:#efefef; border: 1px solid #060606 ;
/*border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; */
}
}
a {
text-decoration:none;
color: #27364d;
}
textarea { overflow:auto; }
</style>
<script language="Javascript">
function validaCNPJ() {
CNPJ = document.validacao.CNPJID.value;
erro = new String;
if (CNPJ.length < 18) erro += "E' necessarios preencher corretamente o numero do CNPJ! \n\n";
if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
if (erro.length == 0) erro += "E' necessarios preencher corretamente o numero do CNPJ! \n\n";
}
//substituir os caracteres que não são numeros
if(document.layers && parseInt(navigator.appVersion) == 4){
x = CNPJ.substring(0,2);
x += CNPJ.substring(3,6);
x += CNPJ.substring(7,10);
x += CNPJ.substring(11,15);
x += CNPJ.substring(16,18);
CNPJ = x;
} else {
CNPJ = CNPJ.replace(".","");
CNPJ = CNPJ.replace(".","");
CNPJ = CNPJ.replace("-","");
CNPJ = CNPJ.replace("/","");
}
var nonNumbers = /\D/;
if (nonNumbers.test(CNPJ)) erro += "A verificacao de CNPJ suporta apenas numeros! \n\n";
var a = [];
var b = new Number;
var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
for (i=0; i<12; i++){
a[i] = CNPJ.charAt(i);
b += a[i] * c[i+1];
}
if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
b = 0;
for (y=0; y<13; y++) {
b += (a[y] * c[y]);
}
if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
erro +="Digito verificador com problema!";
}
if (erro.length > 0){
alert(erro);
return false;
} else {
alert("CNPJ valido!");
}
return true;
}
</script>
</head>
<body leftmargin="10" topmargin="10" marginwidth="10" marginheight="10">
<h1>Valida CNPJ</h1>
<form action="validaCNPJ.htm" name="validacao" onSubmit="return no validaCNPJ()">
<input type="text" name="CNPJID" id="CNPJID" size="25" maxlength="18">
<input type="button" name="Button1" value="Enviar" onclick="validaCNPJ()">
</form>
Digite o numero do CNPJ com os caracteres ".", "/" ou "-".

<br>
Ex. 03.335.456/0001-45
</body>
</html>

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Seja bem vindo ao forum

<html>
<head>
<title>Valida CNPJ</title>
<style>
body, p, div, td, input, select, textarea {
font-family: verdana,arial,helvetica;
font-size:10px;
color:#27364D;
text-decoration: none;
}
h1 {
font-family: verdana,arial,helvetica;
font-size:30px;
color:#27364D;
text-decoration: none;
}
input,textarea {
@if (is.ie) {
color: #efefef; background-color:#efefef; border: 1px solid #060606 ;
/*border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; */
}
}
a {
text-decoration:none;
color: #27364d;
}
textarea { overflow:auto; }
</style>
<script language="Javascript">
function validaCNPJ() {
CNPJ = document.validacao.CNPJID.value;
erro = new String;
if (CNPJ.length < 18) erro += "É necessarios preencher corretamente o numero do CNPJ! \n\n";
if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
if (erro.length == 0) erro += "É necessarios preencher corretamente o numero do CNPJ! \n\n";
}
//substituir os caracteres que não são numeros
if(document.layers && parseInt(navigator.appVersion) == 4){
x = CNPJ.substring(0,2);
x += CNPJ.substring(3,6);
x += CNPJ.substring(7,10);
x += CNPJ.substring(11,15);
x += CNPJ.substring(16,18);
CNPJ = x;
} else {
CNPJ = CNPJ.replace(".","");
CNPJ = CNPJ.replace(".","");
CNPJ = CNPJ.replace("-","");
CNPJ = CNPJ.replace("/","");
}
var nonNumbers = /\D/;
if (nonNumbers.test(CNPJ)) erro += "A verificacao de CNPJ suporta apenas numeros! \n\n";
var a = [];
var b = new Number;
var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
for (i=0; i<12; i++){
a[i] = CNPJ.charAt(i);
b += a[i] * c[i+1];
}
if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
b = 0;
for (y=0; y<13; y++) {
b += (a[y] * c[y]);
}
if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
erro +="Digito verificador com problema!";
}
if (erro.length > 0){
alert(erro);
return false;
}
return true;
}
</script>
</head>
<body leftmargin="10" topmargin="10" marginwidth="10" marginheight="10">
<h1>Valida CNPJ</h1>
<form action="validaCNPJ.htm" name="validacao" method="post" onSubmit="return validaCNPJ()">
<input type="text" name="CNPJID" id="CNPJID" size="25" maxlength="18">
<input type="submit" name="Button1" value="Enviar">
</form>
Digite o numero do CNPJ com os caracteres ".", "/" ou "-".

<br>
Ex. 03.335.456/0001-45
</body>
</html>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...