Ir para conteúdo

POWERED BY:

Arquivado

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

Bernardo Medeiros

no Focus

Recommended Posts

Pessoal estou com uma dúvida me atormentando a cabeça.

 

Sei que existe a possibilidade de se chamar uma função na propriedade onblur de um campo em um form. Porém estou tentando dentro da função que chamo, no caso uma verificação de cpf, fazer uma consulta no banco e trazer um resultado.

 

Se alguém puder me ajudar, aqui está o código da função que estou chamando no onblur:

 

Function validaCPF(cpf)	Dim numero(11)	'== inicio : retirar todos os caracteres que nao sejam 0-9			s = "" 	For x=1 To len(cpf)		ch = mid(cpf,x,1)		If asc(ch)>=48 and asc(ch)<=57 Then			s=s & ch		End If	Next	'== fim : retirar todos os caracteres que nao sejam 0-9	cpf = s	'== inicio : verifica se o cpf é valido	If len(cpf) <> 11 Then		validaCPF = 0	Else				Numero(1) = Cint(Mid(cpf,1,1))		Numero(2) = Cint(Mid(cpf,2,1))		Numero(3) = Cint(Mid(cpf,3,1))		Numero(4) = Cint(Mid(cpf,4,1))		Numero(5) = Cint(Mid(cpf,5,1))		Numero(6) = CInt(Mid(cpf,6,1))		Numero(7) = Cint(Mid(cpf,7,1))		Numero(8) = Cint(Mid(cpf,8,1))		Numero(9) = Cint(Mid(cpf,9,1))		Numero(10) = Cint(Mid(cpf,10,1))		Numero(11) = Cint(Mid(cpf,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		'== inicio : verifica se cpf é valido		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				validaCPF = 1			Else				validaCPF = 0			End If		Else 			validaCPF = 0		End If		'== fim : verifica se cpf é valido				End If	'== fim : verifica se o cpf é validoEnd Function
Reiterando, essa função funciona perfeitamente e valida o cpf. Só preciso saber aonde colocar a consulta no banco (SQL Server) para buscar os dados dessa pessoa, se existir algum registro com isso. Segue abaixo o código da consulta:

 

SQL="SELECT * FROM candidatos where cpf = '" & cpf & "'"	set rs = cnn.execute(sql)		Dim strUF, strCidade, strBairro, strLogradouro, intCEPres, strNumero, strComplemento, strEmail	Dim strTelRes, strTelCel, strCPF, strOrgao, strUFnasc, strCidadeN, strPai, strMae	Dim strNome, byteArt4, byteInscP, byteMF, strDataN, charEstadoC, strInstEns, strProf, strID	strCPF = trim(replace(strCPF,".",""))	SQL="SELECT * FROM candidatos where cpf = '" & strcpf & "'"set rs = cnn.execute(sql)sql2 = "select * from candidatosantigos where cpf = '" & strcpf & "'"set rs2 = cnn.execute(sql2)
Valeu ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

kra você pode tentar dessa forma:<script><%sql = "select * from tabela"%></script>isso dentro a função.eu sei q os recordsets e outras coisas em asp você pode usar, como eu faço algumas vezes nos sistemas de desenvolvo. Agora não se executar uma string do sql dentro dos js dá.mais tenta aeflw.

Compartilhar este post


Link para o post
Compartilhar em outros sites

como assim?

 

Assim:

 

Function validaCPF(cpf)	Dim numero(11)	'== inicio : retirar todos os caracteres que nao sejam 0-9			s = ""	For x=1 To len(cpf)		ch = mid(cpf,x,1)		If asc(ch)>=48 and asc(ch)<=57 Then			s=s & ch		End If	Next	'== fim : retirar todos os caracteres que nao sejam 0-9	cpf = s	'== inicio : verifica se o cpf é valido	If len(cpf) <> 11 Then		validaCPF = 0	Else				Numero(1) = Cint(Mid(cpf,1,1))		Numero(2) = Cint(Mid(cpf,2,1))		Numero(3) = Cint(Mid(cpf,3,1))		Numero(4) = Cint(Mid(cpf,4,1))		Numero(5) = Cint(Mid(cpf,5,1))		Numero(6) = CInt(Mid(cpf,6,1))		Numero(7) = Cint(Mid(cpf,7,1))		Numero(8) = Cint(Mid(cpf,8,1))		Numero(9) = Cint(Mid(cpf,9,1))		Numero(10) = Cint(Mid(cpf,10,1))		Numero(11) = Cint(Mid(cpf,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		'== inicio : verifica se cpf é valido		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				validaCPF = 1			Else				validaCPF = 0			End If		Else			validaCPF = 0		End If		'== fim : verifica se cpf é valido				End If

Aí aqui fechar o script, abrir o asp e abrir o script novamente?

 

'== fim : verifica se o cpf é validoEnd Function

Compartilhar este post


Link para o post
Compartilhar em outros sites

Colega,Lembre de uma coisaO ASP é no server, e o JavaScript é no Client, portanto, salvo a utilização do AJAX, não é possível consultar o server pelo JS.Para resolver seu problema, terá que utilizar AJAX, para entender seu funcionamento, pesquise o Forum, que você encontrará diversas soluções.At.

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.