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

For Each


ju_rezende

Pergunta

olá pessoal fiz uma function para incluir nas minhas paginas mas ela está passando sem fazer verificaçãoolha a function

<% function formulario()

for each y in request.form

if request.form (y)= empty then

session ("erro") = " O campo " & y & " é uma informação necessária"

session(y) = replace(request.form(x),"'","")

response.redirect ("erro2.asp")

end if

next

end function%>

e gostaria de trabalhar com variáveis e não consession, alguém poderia me dar uma ajudinha?

Grata pela atenção

Abraços

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
Guest Visitante

USA UMA SUB

<%

SUB formulario()

for each y in request.form

if request.form (y)= empty then

session ("erro") = " O campo " & y & " é uma informação necessária"

session(y) = replace(request.form(x),"'","")

response.redirect ("erro2.asp")

end if

next

end SUB

CALL formulario

%>

Link para o comentário
Compartilhar em outros sites

  • 0

mesmo assim, continua passando, vou colocar meu form aqui

Pg Html

<html>

<head>

<title>Comércio de Jacareí</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body background="../imagem/bg.gif" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">

<table width="770" border="0" align="center" cellpadding="0" cellspacing="0" id="setores">

<tr>

<td bgcolor="#FFFFFF">

<table id="setores" width="779" height="864" border="0" cellpadding="0" cellspacing="0">

<tr>

<td width="779" height="33"><!--#include file="topo01.html"--></td>

</tr>

<tr>

<td width="779" height="81"><!--#include file="topo02.asp"--></td>

</tr>

<tr>

<td width="779" height="86" background="../imagem/bg_topo3.gif" >

<!--#include file="topo3.html"-->

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

</td>

</tr>

<tr>

<td width="779" height="14" bgcolor="#8DB5AF">&nbsp;</td>

</tr>

<tr>

<td width="779" height="3" bgcolor="#FFFFFF"></td>

</tr>

<tr>

<td width="779" height="625" align="center" Valign="top"> <br>

<table width="300" border="0" cellspacing="0" cellpadding="0">

<Form action="login.asp" method="post">

<tr>

<td height="34" colspan="2"><strong></strong></td>

</tr>

<tr>

<td width="84" height="26"><strong><font size="3" face="Arial, Helvetica, sans-serif">Login

</font></strong></td>

<td width="216"><strong>

<input type="text" name="login">

</strong></td>

</tr>

<tr>

<td height="31"><strong><font size="3" face="Arial, Helvetica, sans-serif">Senha

</font></strong></td>

<td><input type="password" name="senha" size="8" maxlength="*"></td>

</tr>

<tr>

<td colspan="2" align="center"><input type="submit" name="Submit" value="Enviar"></td>

</tr>

</form>

</table> </td>

</tr>

<tr>

<td width="779" height="22"><!--#include file="Rodape.html"--></td>

</tr>

</table>

</td>

</tr>

</table>

</body>

</html>

pag Login onde coloquei o include

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

<%vlogin=request.form("login")

vsenha=request.form("senha")

db = server.MapPath ("dados\treino.mdb")

set con = server.CreateObject("adodb.connection")

'con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("..\..\dados\treino.mdb") &";Persist Security Info=False"

con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("..\dados\treino.mdb") &";Persist Security Info=False"

set rs=con.execute("select * from login where login='"&vlogin&"' and senha='"&vsenha&"'")

if rs.EOF then%>

<div align="center">

<table width="770" border="0" cellspacing="0" cellpadding="0">

<tr>

<tr>

<td width="779" height="33"><!--#include file="topo01.html"--></td>

</tr>

<tr>

<td width="779" height="81"><!--#include file="topo02.asp"--></td>

</tr>

<tr>

<td width="779" height="86" background="imagem/bg_topo3.gif" >

<!--#include file="topo3.html"-->

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

</td>

</tr>

<td align="center">

<font size="2" face="Arial, Helvetica, sans-serif"><strong><a href="default.asp">Home</a>

<a href="pagina.asp">Voltar</a></strong></font></td>

</tr>

</table>

<table width="770" border="0">

<tr>

<td align="center" >

<br>

<br>

<br>

<br>

<br>

<font size="3" face="Arial, Helvetica, sans-serif"> <strong>

<%response.write"Senha ou Login inválido! Volte e tente novamente."

else session("logado")="sim"

response.redirect"TipoClientes.asp"

end if %>

<% if con.state <> 0 then con.Close

If rs.state <> 0 Then rs.close

set con= Nothing

set rs = Nothing%>

</strong></font> </td>

</tr>

</table>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Comércio de Jacareí</title>

<style type="text/css">

<!--

a:link {

color: #FF0000;

}

a:visited {

color: #FF0000;

}

a:hover {

color: #D7D700;

}

a:active {

color: #FF0000;

}

body,td,th {

font-family: Arial, Helvetica, sans-serif;

font-size: 12px;

font-weight: bold;

}

-->

</style>

<body>

</body>

</html>

pag seguranca.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>

<% sub formulario()

for each y in request.form

if request.form (y)= empty then

session ("erro") = " O campo " & y & " é uma informação necessária"

session(y) = replace(request.form(x),"'","")

response.redirect ("erro2.asp")

end if

next

end sub%>

será que estou fazendo errado?

Link para o comentário
Compartilhar em outros sites

  • 0

Cade a chamada para a SUB? CALL formulario()

Tira de dentro da SUB então.

for each y in request.form

if request.form (y)= empty then

session ("erro") = " O campo " & y & " é uma informação necessária"

session(y) = replace(request.form(x),"'","")

response.redirect ("erro2.asp")

end if

next

Sem SUB

Link para o comentário
Compartilhar em outros sites

  • 0

Desculpe, já coloquei o call, e tá dando erro

olha meu cod com o call

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

<%call formulario

vlogin=request.form("login")

vsenha=request.form("senha")

db = server.MapPath ("dados\treino.mdb")

set con = server.CreateObject("adodb.connection")

'con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("..\..\dados\treino.mdb") &";Persist Security Info=False"

con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("..\dados\treino.mdb") &";Persist Security Info=False"

set rs=con.execute("select * from login where login='"&vlogin&"' and senha='"&vsenha&"'")

if rs.EOF then%>

<div align="center">

<table width="770" border="0" cellspacing="0" cellpadding="0">

<tr>

<tr>

<td width="779" height="33"><!--#include file="topo01.html"--></td>

</tr>

<tr>

<td width="779" height="81"><!--#include file="topo02.asp"--></td>

</tr>

<tr>

<td width="779" height="86" background="imagem/bg_topo3.gif" >

<!--#include file="topo3.html"-->

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

</td>

</tr>

<td align="center">

<font size="2" face="Arial, Helvetica, sans-serif"><strong><a href="default.asp">Home</a>

<a href="pagina.asp">Voltar</a></strong></font></td>

</tr>

</table>

<table width="770" border="0">

<tr>

<td align="center" >

<br>

<br>

<br>

<br>

<br>

<font size="3" face="Arial, Helvetica, sans-serif"> <strong>

<%response.write"Senha ou Login inválido! Volte e tente novamente."

else session("logado")="sim"

response.redirect"TipoClientes.asp"

end if %>

<% if con.state <> 0 then con.Close

If rs.state <> 0 Then rs.close

set con= Nothing

set rs = Nothing%>

</strong></font> </td>

</tr>

</table>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Comércio de Jacareí</title>

<body>

</body>

</html>

olha o erro

Tipo de erro:

Objeto Request, ASP 0102 (0x80004005)

A função espera uma seqüência de caracteres como entrada.

/tulio/site/!!_material/seguranca.asp, line 6

estou fazendo certo?

Link para o comentário
Compartilhar em outros sites

  • 0

Amigo estou tenatndo fazer um for each de segurançã, contra injection, mas acho que preciso de uma funcion que tenha uma variável que ceba todos os campos do formulario, para depois começar a fazer o tratamento.

tentei primeiro em uma propria pagian, pois quando tento inserir include e chamo a funçao, não funciona.

Bem mas vamos por parte,

isso eu consegui, mas não quero usar session, quero usar variável e acho que vou ter que usar variável com array, me corrija se eu estiver errada, por favor

For each campo_do_form in request.form

if session("erro")=replace(request.form(campo_do_form),"'","") or session("erro")=replace(request.form(campo_do_form),"*","") or session("erro")=replace(request.form(campo_do_form),"%","") or request.form(campo_do_form)= "" then

response.write "Você não tem permissão para entrar nesta pagina"

end if

next

response.end

Depois que eu conseguir jogar dentro de um array, preciso fazer uma function, mas primeiro preciso conseguir a variável com arrey

Grata pela atenção

Link para o comentário
Compartilhar em outros sites

  • 0

Amigos consegui fazer isso, agora preciso sabe se coloco isso dentro de function ou sub, não sei neste caso qual ´´e mais aconselhável, e como devo chamr isso nas minhas páginas?

esse tá funcionando

<%

For each campo_do_form in request.form

cBody = Request.Form(campo_do_form)

cBody= replace(cBody,"'","")

cBody= replace(cBody,"#","")

cBody= replace(cBody,"$","")

cBody= replace(cBody,"%","")

cBody= replace(cBody,"¨","")

cBody= replace(cBody,"&","")

cBody= replace(cBody,"'or'1='1'","")

cBody= replace(cBody,"--","")

cBody= replace(cBody,"insert","")

cBody= replace(cBody,"drop","")

cBody= replace(cBody,"delet","")

cBody= replace(cBody,"xp_","")

cBody= replace(cBody,"select","")

cBody= replace(cBody,"*","")

cBody= replace(cBody,"<","")

cBody= replace(cBody,">","")

cBody=replace(cBody,"<","")

cBody=replace(cBody,";","")

cBody=replace(cBody,"+","")

if cbody="" then

response.redirect ("erropermicao.asp")

'if session("erro")=replace(request.form(campo_do_form),"'","") or session("erro")=replace(request.form(campo_do_form),"*","") or session("erro")=replace(request.form(campo_do_form),"%","") or request.form(campo_do_form)= "" then

'response.write "O d"

end if

next

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,2k
    • Posts
      651,9k
×
×
  • Criar Novo...