Jump to content


Photo

Validar Formulario Com Funcao Asp


  • Faça o login para participar
5 replies to this topic

#1 M@rcelo

M@rcelo

    Turista

  • Usuários
  • 39 posts
  • Sexo:Não informado

Posted 04/09/2008, 08:32

Pessoal to com uma duvida sobre funcoes.
Eu gostaria de fazer uma validacao no form por uma funçao asp daseguinte forma
<form name="form1" method="post" action="arearestrita.asp"
onsubmit=" return validasenha(this)">
observe, eu preciso que só vá para 'arearestrita.asp' depois de fazer a validação na funcao 'validacliente'. sendo que na funcao validacliente vou consultar o banco de dados
se a senha é valida.

E se possível dar mensagem pra o usuario em javascript.

a funcao validacliente retornara true se tiver tudo certo ou false se nao der certo.
obrigado péla atencao


<%
function validasenha(form)
if ( form.email ou form.senha ="")
respnse.write("<script language='JavaScript' type='text/JavaScript'>
{alert('entre com o email e senha')}</script>")
// da a mensagem e retorna falso
validasenha=false
exit function
endif

select * from cliente where email where email = email and senha=senha.
if not eof
// tudo ok,, nesse caso vai para tela 'arearestrita.asp'
validasenha=true
else
respnse.write("<script language='JavaScript' type='text/JavaScript'>
{alert('entre com o email e senha')}</script>")
validasenha=false
endif

end function

%>

<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="193">
<div class="interna_lado">
<span class="titulo">Login para Clientes</span>
<div align="Left">
<form name="form1" method="post" action="arearestrita.asp"
onsubmit=" return validasenha(this)">
<label>Email Principal <br>
<input name="email" type="text" size="23" class="form1" />
<br />
Senha<br>
<input name="senha" type="text" size="12" maxlength="10" class="form1" />
<input name="loginorcaobra" type="submit" id="loginorcaobra" value="Entrar" />

</form>
</td>
</tr>
</table>

#2 Ted k'

Ted k'

    Normal

  • Usuários
  • 64 posts
  • Sexo:Masculino
  • Localidade:Salvador - {BA}

Posted 04/09/2008, 09:11

qual seu nível de ASP???
+++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ ++
: Ted k' não responde por MP e nem por MSN ou Skype, use o Fórum WMOnline :
::::::::::::::::::::::::::::::::::: ASP + XML + DOM :::::::::::::::::::::::::::::::::::
::: Acesse meu BLOG e confira dicas de ASP :::::::: http://tedk.com.br/blog ::::::
+++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ ++

#3 Xclick

Xclick

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:Bauru

Posted 04/09/2008, 09:15

Opa opa... temos um problema de lógica de programação aqui...

Entenda o seguinte a programação web é executada em camadas a partir do momento que você faz um requisição ao servidor web, esta é:

1° - Executar todo o código server-side (ou seja, ASP, PHP, JSP, etc...) e requisiçoes de banco de dados.
2° - Executar todo o código clint-side (Javascript, etc)
3° - Executar todo o código de formatação ( HTML, CSS, etc) (que também é um código client-side ou traduzindo "lado cliente")

Portanto, a partir do momento que o código server-side já foi executado, a camada client-side que é um passo seguinte não fará interações com a 1° camada pois essa já foi executada.

Acho que já deve estar neste ponto entendendo onde está o seu erro?

Caso você queira fazer uma interação com a camada server-side sem que haja o recarregamento da página você deve usar Ajax/JavaScript para fazer essa execução em outra thread (linha de execução) e com o retorno manipular de acordo com o que deseja...

Deu pra entender?

Saudações!

#4 M@rcelo

M@rcelo

    Turista

  • Usuários
  • 39 posts
  • Sexo:Não informado

Posted 04/09/2008, 13:37

Cara,,
entao eu nao posso fazer nem assim
<form name="form1" method="post" action="#"
onsubmit=" return validasenha()">

sendo que a funcao validasenha é em asp tambem, onde eu faria os testes e daria o redirect para pagina correta se os dados fossem validados
olha abaixo:
obrigado

function validasenha()

response.buffer = true
email = request("email")
senha = request("senha")

if email <> "" and senha <> "" then

<!--#include file="conn.asp"-->

email = trim(email)
email = replace(email,"'","''")

senha = trim(senha)
senha = ucase(replace(senha,"'","''"))

SQL3 = "SELECT emai1l,senha clientes where email1 = '"&email&"' and senha = '"&senha&"' a
Set oRS3 = DBConnection.Execute(SQL3)
IF oRS3.eof then
msg="Cadstro não Localizado."
else

session("clienteativo") = "sim"
response.redirect "http://" & Request.ServerVariables("HTTP_HOST") & "/ok.asp"
End if

Set oRS3 = nothing
DBConnection.Close
else
msg="Informe o Email e a Senha."
end if

end function

#5 Xclick

Xclick

    12 Horas

  • Usuários
  • 198 posts
  • Sexo:Não informado
  • Localidade:Bauru

Posted 04/09/2008, 15:18

Não pode não... :P

Recomendo você fazer a validação em Javascript... Caso tenha que fazer em ASP, vc libera o submit, na página seguinte ou na mesma que seja vc recebe os dados se OK vc manda pra outro lugar senão retorna pro form...

#6 M@rcelo

M@rcelo

    Turista

  • Usuários
  • 39 posts
  • Sexo:Não informado

Posted 04/09/2008, 15:29

ok ,,VALEW :beer:




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq