Guest franciscobiscaino Postado Abril 24, 2003 Denunciar Share Postado Abril 24, 2003 como faço p/ o script validação de cpf barrar inserção de usuário o script é o seguintena pg de post é o seguintedizendo que o cpf é requeridoIf Len(Trim(sCPF)) = 0 AND gbReqCPF Then sString = sString & ErrorString(GLS_CPF) End IfFunction ErrorString(sField) ErrorString = replace(GLS_FieldErr,"%FIELDNAME%","<B>" & UCASE(sField) & "</B>") & "<BR>"End Functionagora na pg que contentem todas as funções é o código de validaçãofunction CalculaCPF()Dim RecebeCPF, Numero(11), soma, resultado1, resultado2RecebeCPF = Request("CPF")'Retirar todos os caracteres que não sejam 0-9s="" for x=1 to len(RecebeCPF)ch=mid(RecebeCPF,x,1)if asc(ch)>=48 and asc(ch)<=57 thens=s & chend ifnextRecebeCPF = sif len(RecebeCPF) <> 11 thenresponse.write("<h1>É obrigatório o CPF com 11 dígitos</h1>")elseif RecebeCPF = "00000000000" thenresponse.write("<h1>CPF Inválido</h1>")elseNumero(1) = Cint(Mid(RecebeCPF,1,1))Numero(2) = Cint(Mid(RecebeCPF,2,1))Numero(3) = Cint(Mid(RecebeCPF,3,1))Numero(4) = Cint(Mid(RecebeCPF,4,1))Numero(5) = Cint(Mid(RecebeCPF,5,1))Numero(6) = CInt(Mid(RecebeCPF,6,1))Numero(7) = Cint(Mid(RecebeCPF,7,1))Numero(8) = Cint(Mid(RecebeCPF,8,1))Numero(9) = Cint(Mid(RecebeCPF,9,1))Numero(10) = Cint(Mid(RecebeCPF,10,1))Numero(11) = Cint(Mid(RecebeCPF,11,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 * (int(soma / 11)))if soma = 0 or soma = 1 thenresultado1 = 0elseresultado1 = 11 - somaend ifif resultado1 = Numero(10) thensoma = 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) * 2soma = soma -(11 * (int(soma / 11)))if soma = 0 or soma = 1 thenresultado2 = 0elseresultado2 = 11 - somaend ifif resultado2 = Numero(11) thenresponse.write("<h1>CPF Válido</h1>") elseresponse.write("<h1>CPF Inválido</h1>")end ifelse response.write("<h1>CPF Inválido</h1>")end ifend ifend functioncomo eu faço p/ que o usuário com cpf inválido não seja inscrito no site a e detalhe a parte de inseção é a seguinte sUserName = "" & RequestValue("username") sName = "" & RequestValue("name") sEmail = "" & RequestValue("email") sDianasc = "" & RequestValue("Dianasc") sMesnasc = "" & RequestValue("Mesnasc") sAnonasc = "" & RequestValue ("Anonasc") sSexo = "" & RequestValue("Sexo") sAddressOne = "" & RequestValue("addressone") sBairro1 = "" & RequestValue("Bairro1") sAddressTwo = "" & RequestValue("addresstwo") sBairro2 = "" & RequestValue("Bairro2") sFone = "" & RequestValue("fone") sDdd1 = "" & RequestValue("ddd1") sCel = "" & RequestValue ("cel") sDdd2 = "" & RequestValue("ddd2") sCPF = "" & RequestValue("CPF") sCity = "" & RequestValue("city") sState = "" & RequestValue("state") sZip = "" & RequestValue("zip") sCountry = "" & RequestValue("country") sInfoad = "" & RequestValue("Infoad") sNovidades = "" & RequestValue("Novidades") sString = "" npSQL = "INSERT INTO tblQARegistration (regUserName, regPassword, regValidated, regName, anonasc, mesnasc, dianasc, regEmail, " & _ "regSexo, regBairro1, regBairro2, regAddress1, regAddress2,regFone,regDdd1, regCel, regDdd2, regCPF, regCity, regState, regZip, Infoad, Novidades, regCountry) VALUES (" & _ SQLStr(sUserName) & ", " & _ SQLStr(sPassword) & " , " & _ SQLBool(gbUsersAdd) & ", " & _ SQLStr(sName) & ", " & _ SQLStr(sAnonasc) & ", " & _ SQLStr(sMesnasc) & ", " & _ SQLStr(sDianasc) & ", " & _ SQLStr(sEmail) & ", " & _ SQLStr(sSexo) & ", " & _ SQLStr(sAddressOne) & ", " & _ SQLStr(sBairro1) & ", " & _ SQLStr(sAddressTwo) & ", " & _ SQLStr(sBairro2) & ", " & _ SQLStr(sfone) & ", " & _ SQLStr(sDdd1) & ", " & _ SQLStr(sCel) & ", " & _ SQLStr(sDdd2) & ", " & _ SQLStr(sCPF) & ", " & _ SQLStr(sCity) & ", " & _ SQLStr(sState) & ", " & _ SQLStr(sZip) & "," & _ SQLStr(sInfoad) & "," & _ SQLStr(sNovidades) & "," & _ SQLStr(sCountry) & " )" gobjConnect.Execute(npSQL) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eddie_666 Postado Maio 2, 2003 Denunciar Share Postado Maio 2, 2003 Eu não sei se to entendendo o que tu quer fazer, mas se for o que eu to pensando é bem simples, utiliza um valor de retorno pra função CalculaCPF e daí testa esse valor... Por exemplo:If CalculaCPF = True then call checkcpf end ifSó não sei se é bem isso que tu quer... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 franciscobiscaino Postado Maio 2, 2003 Denunciar Share Postado Maio 2, 2003 If CalculaCPF = True then ainda não está chamando o checkCPF Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 franciscobiscaino Postado Maio 2, 2003 Denunciar Share Postado Maio 2, 2003 descula mas é isto que ainda não chama o checkIf CalculaCPF = True then call checkcpf end if Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eddie_666 Postado Maio 2, 2003 Denunciar Share Postado Maio 2, 2003 Primeiro tu tem que retornar um valor true se calcula cpf for valido e false se o cpf não for válido... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 franciscobiscaino Postado Maio 2, 2003 Denunciar Share Postado Maio 2, 2003 como eu faço isto agora eu não to entendendo direito manda um exemplo por favor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eddie_666 Postado Maio 2, 2003 Denunciar Share Postado Maio 2, 2003 Vou dar uma olhada, manda todo o teu código para o meu e-mail, ou melhor, pega meu icq... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 franciscobiscaino Postado Maio 4, 2003 Denunciar Share Postado Maio 4, 2003 quando você ver me fala Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 franciscobiscaino Postado Maio 7, 2003 Denunciar Share Postado Maio 7, 2003 e ai deu uma olhada no código p/ mim ??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eddie_666 Postado Maio 8, 2003 Denunciar Share Postado Maio 8, 2003 Cara, ainda não consegui parar na frente do meu pc para fazer alguma coisa, estou cheio de trabalhos pra universidade, mas no final de semana eu vou dar uma olhada... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 negociadorweb Postado Maio 8, 2003 Denunciar Share Postado Maio 8, 2003 ai francisco, será que você poderia ceder o codigo para eu analizar com mais calma aqui no meu trabalho? acho que estou entendendo o que você quer.se puder fazer isso, manda ele zipado para o meu emailwashibano@bol.com.brassim que eu conseguir fazer ele chamar a funcao para você eu devolveri seu codigo.ah, e não se preocupe que não vou passar ele para ninguém sem sua autorizacao.coisa de ética entre programadores...c entende né?[]'s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 franciscobiscaino Postado Maio 14, 2003 Denunciar Share Postado Maio 14, 2003 para o Eddie e o negociador você's deram uma olhada em todo o código ???????????? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pgmador Postado Maio 20, 2003 Denunciar Share Postado Maio 20, 2003 Cara.. no java que você esta tratando se o CPF é válido, coloca o seguinte, se o CPF for inválido form.elements[x].value = ''; form.elements[x].focus(); return false;onde [x] é o número do campo do seu formulário que pede o CPF.Este código irá fazer com que o campo CPF seja apagado, o foco volte para ele e não processe a página de inclusão de dados até o CPF ser válido.Espero ter ajudado.Nelson :ph34r: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 franciscobiscaino Postado Junho 17, 2003 Denunciar Share Postado Junho 17, 2003 SOCORRRO ME AJUDA POIS TA SAINDO FUMAÇA DA CABEÇA Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest franciscobiscaino
como faço p/ o script validação de cpf barrar inserção de usuário
o script é o seguinte
na pg de post é o seguinte
dizendo que o cpf é requerido
If Len(Trim(sCPF)) = 0 AND gbReqCPF Then
sString = sString & ErrorString(GLS_CPF)
End If
Function ErrorString(sField)
ErrorString = replace(GLS_FieldErr,"%FIELDNAME%","<B>" & UCASE(sField) & "</B>") & "<BR>"
End Function
agora na pg que contentem todas as funções é o código de validação
function CalculaCPF()
Dim RecebeCPF, Numero(11), soma, resultado1, resultado2
RecebeCPF = Request("CPF")
'Retirar todos os caracteres que não sejam 0-9
s=""
for x=1 to len(RecebeCPF)
ch=mid(RecebeCPF,x,1)
if asc(ch)>=48 and asc(ch)<=57 then
s=s & ch
end if
next
RecebeCPF = s
if len(RecebeCPF) <> 11 then
response.write("<h1>É obrigatório o CPF com 11 dígitos</h1>")
elseif RecebeCPF = "00000000000" then
response.write("<h1>CPF Inválido</h1>")
else
Numero(1) = Cint(Mid(RecebeCPF,1,1))
Numero(2) = Cint(Mid(RecebeCPF,2,1))
Numero(3) = Cint(Mid(RecebeCPF,3,1))
Numero(4) = Cint(Mid(RecebeCPF,4,1))
Numero(5) = Cint(Mid(RecebeCPF,5,1))
Numero(6) = CInt(Mid(RecebeCPF,6,1))
Numero(7) = Cint(Mid(RecebeCPF,7,1))
Numero(8) = Cint(Mid(RecebeCPF,8,1))
Numero(9) = Cint(Mid(RecebeCPF,9,1))
Numero(10) = Cint(Mid(RecebeCPF,10,1))
Numero(11) = Cint(Mid(RecebeCPF,11,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 * (int(soma / 11)))
if soma = 0 or soma = 1 then
resultado1 = 0
else
resultado1 = 11 - soma
end if
if resultado1 = Numero(10) then
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 * (int(soma / 11)))
if soma = 0 or soma = 1 then
resultado2 = 0
else
resultado2 = 11 - soma
end if
if resultado2 = Numero(11) then
response.write("<h1>CPF Válido</h1>")
else
response.write("<h1>CPF Inválido</h1>")
end if
else
response.write("<h1>CPF Inválido</h1>")
end if
end if
end function
como eu faço p/ que o usuário com cpf inválido não seja inscrito no site
a e detalhe a parte de inseção é a seguinte
sUserName = "" & RequestValue("username")
sName = "" & RequestValue("name")
sEmail = "" & RequestValue("email")
sDianasc = "" & RequestValue("Dianasc")
sMesnasc = "" & RequestValue("Mesnasc")
sAnonasc = "" & RequestValue ("Anonasc")
sSexo = "" & RequestValue("Sexo")
sAddressOne = "" & RequestValue("addressone")
sBairro1 = "" & RequestValue("Bairro1")
sAddressTwo = "" & RequestValue("addresstwo")
sBairro2 = "" & RequestValue("Bairro2")
sFone = "" & RequestValue("fone")
sDdd1 = "" & RequestValue("ddd1")
sCel = "" & RequestValue ("cel")
sDdd2 = "" & RequestValue("ddd2")
sCPF = "" & RequestValue("CPF")
sCity = "" & RequestValue("city")
sState = "" & RequestValue("state")
sZip = "" & RequestValue("zip")
sCountry = "" & RequestValue("country")
sInfoad = "" & RequestValue("Infoad")
sNovidades = "" & RequestValue("Novidades")
sString = ""
npSQL = "INSERT INTO tblQARegistration (regUserName, regPassword, regValidated, regName, anonasc, mesnasc, dianasc, regEmail, " & _
"regSexo, regBairro1, regBairro2, regAddress1, regAddress2,regFone,regDdd1, regCel, regDdd2, regCPF, regCity, regState, regZip, Infoad, Novidades, regCountry) VALUES (" & _
SQLStr(sUserName) & ", " & _
SQLStr(sPassword) & " , " & _
SQLBool(gbUsersAdd) & ", " & _
SQLStr(sName) & ", " & _
SQLStr(sAnonasc) & ", " & _
SQLStr(sMesnasc) & ", " & _
SQLStr(sDianasc) & ", " & _
SQLStr(sEmail) & ", " & _
SQLStr(sSexo) & ", " & _
SQLStr(sAddressOne) & ", " & _
SQLStr(sBairro1) & ", " & _
SQLStr(sAddressTwo) & ", " & _
SQLStr(sBairro2) & ", " & _
SQLStr(sfone) & ", " & _
SQLStr(sDdd1) & ", " & _
SQLStr(sCel) & ", " & _
SQLStr(sDdd2) & ", " & _
SQLStr(sCPF) & ", " & _
SQLStr(sCity) & ", " & _
SQLStr(sState) & ", " & _
SQLStr(sZip) & "," & _
SQLStr(sInfoad) & "," & _
SQLStr(sNovidades) & "," & _
SQLStr(sCountry) & " )"
gobjConnect.Execute(npSQL)
Link para o comentário
Compartilhar em outros sites
38 respostass a esta questão
Posts Recomendados
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.