Ir para conteúdo

POWERED BY:

Arquivado

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

Ricardo Moura

valida cpf ou cnpj

Recommended Posts

Bom Dia Pessoal estou tentando validar um CNPJ ou CPF que são digitados no mesmo "text", porém não estou conseguindo. Tenho duas funções distintas, uma valida o CPF outra o CNPJ.....estou tentando validar assim:if (document.frm_cli.cpf_cnpj.value==""){ alert("O CPF ou CNPJ é obrigatório") document.frm_cli.cpf_cnpj.focus(); return false; } else{ switch (frm_cli.cpf_cnpj.value.length){ case 11: validacpf(document.frm_cli.cpf_cnpj.value); //break; case 14: validacnpj(document.frm_cli.cpf_cnpj.value); // break; default: alert("Número de Dígitos inválidos"); return false; // break; } }acho que não está contando o número de caracteres.Como não tenho muita prática nesta linguagem, gostaria de saber dos "experts" se estou fazendo algo de errado.Desde já muito obrigado a todos.Ricardo Moura

Compartilhar este post


Link para o post
Compartilhar em outros sites

valida CNPJ em ASP ou VB:

Public Function isCNPJ(ByVal pCNPJ As String) As Boolean

 

Dim Conta As Integer, Soma As Long, Passo As Integer

Dim Digito1 As Integer, Digito2 As Integer, Flag As Integer

 

isCNPJ = False: pCNPJ = Trim(pCNPJ)

 

If Len(pCNPJ) <> 14 Then

Exit Function

End If

 

For Passo = 5 To 6

Soma = 0

Flag = Passo

 

For Conta = 1 To Passo + 7

Soma = Soma + (Val(Mid(pCNPJ, Conta, 1)) * Flag)

Flag = IIf(Flag > 2, Flag - 1, 9)

Next

 

Soma = Soma Mod 11

 

If Passo = 5 Then Digito1 = IIf(Soma > 1, 11 - Soma, 0)

If Passo = 6 Then Digito2 = IIf(Soma > 1, 11 - Soma, 0)

Next

 

If (Digito1 = Val(Mid(pCNPJ, 13, 1)) And Digito2 = Val(Mid(pCNPJ, 14, 1))) Then

isCNPJ = True

End If

 

End Function

 

 

 

Valida CPF:

 

Public Function isCPF(ByVal pCPF As String) As Boolean

 

Dim Conta As Integer, Soma As Integer, Resto As Integer, Passo As Integer

 

isCPF = False: pCPF = Trim(pCPF)

 

If Len(pCPF) <> 11 Then

Exit Function

End If

 

For Passo = 11 To 12

Soma = 0

For Conta = 1 To Passo - 2

Soma = Soma + Val(Mid(pCPF, Conta, 1)) * (Passo - Conta)

Next

 

Resto = 11 - (Soma - (Int(Soma / 11) * 11))

 

If Resto = 10 Or Resto = 11 Then Resto = 0

 

If Resto <> Val(Mid(pCPF, Passo - 1, 1)) Then

Exit Function

End If

Next

 

isCPF = True

 

End Function

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.