Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Caro amigos
tenho um bd sql server 2008
eu queria grava no banco de dados o nome do usuário que inseriu cadastro
tenho uma tabela clientes, onde os usuários fazem cadastro de clientes, quero gravar junto com cadastro do cliente o nome do usuário que inseriu o cliente.
se possível
grato.
apenas crie um campo para inserir o nome do usuário e dê um INSERT normal.
isso ai eu sei XD
o problema é que quando o usuário faz login eu não carrego ele pra todas as paginas
vou ter que fazer um incluid pegando o usuário em todas as paginas ?
Não precisa fazer include, se vc criar sua página de login uma SESSION, basta nas outras páginas verificar e recuperar este valor.
Em todas as suas páginas em que deseja que esteja com o Login do user vc faz a verificação dele se conferir o valor da Session de login irá carregar as páginas desejadas, do contrário retorna para a de Login, exemplo:
>
<%
If IsEmpty(Session("valor da Session")) Then Response.Redirect "./index.asp" End If
%>
Espero que ajude.
acho que é isso ai vlw mano se der certo volto aqui e aviso
Session resolve.
Att;
pode ser session, cookies, campo hidden no form. Com session apenas lembre de remover todas no final do processo, para assim não dar overload na session. use assim para expirar a session e apagar seu conteudo
response.expires = 0
response.expiresabsolute = Now() -1
response.addHeader "pragma","no-cache"
response.addHeader "cache-control","private"
Response.CacheControl = "no-cache"
Session.Contents.RemoveAll()
Session.Abandon
meu codigo está assim
<%
login=RemoverTudo(Request("login"))
senha=RemoverTudo(Request("senha"))
sql = "SELECT * FROM login WHERE login = '" & login &"' AND senha = '" & senha & "' "
set rs = objConn.Execute(sql)
if (rs.eof) Then
rs.close
Response.Write "Ops, login ou Senha incorretos"
Response.write("<br><a href='_FormLogin.asp'>Tentar Novamente</a>")
Else
Session("validacao") = "ok"
Session("nome") = rs("login")
rs.close
Session.Timeout=25 'Tempo para expirar o login em minutos
Response.redirect("ini01.asp")
End If
%>
agora em outra pagina queria mostrar o usuario que está logado
como chamo a Session("nome")
tentei dar request n consegui
Olá Victor,
Acredito que basta vc inserir assim:
Usuário: (<%=Session("nome")%>)
ou
>
Response.Write "Usuário:"Response.Write " "Response.Write(Session("nome"))
Desta forma, quando ele estiver logado será impresso na tela dele o seu nome de usuário.
Espero que ajude.
consegui com
Response.Write(Session("nome"))
vlwwwww
Se resolveu coloque o topico como resolvido.
Att;
Legal Victor,
Apenas uma dica muito importante para evitar SQL Injection, trate seu Select com replace.
exemplo:
sql = "SELECT * FROM login WHERE login= '"& replace(login,"'","''") &"' AND senha= '"& replace(senha,"'","''") & "' "
Desta forma, evitará alguns aborrecimentos com seu login não tratado.
Espero ter ajudado.
Olá Victor, deu certo o que precisava?
Caso tenha resolvido, seria bom marcar como tópico resolvido.
Abraços,
Já no SQL-inject, aconselho a fazer assim. Primeiro criaremos um arquivo chamado sqlinjection.asp, esse arquivo terá o seguinte código:
<%
function sqlInjection()
'Palavras que serão barradas caso encontradas nos request
palavrasDoMal = array("select", "drop", ";", "--", "insert", "delete", "xp_", "#", "%", "&", "'", "(", ")", "/", "\", ":", ";", "<", ">", "=", "[", "]", "?", "`", "|")
' Verificando o que é passado pelo request.queryString
for each item in request.QueryString
for j = lbound(palavrasDoMal) to ubound(palavrasDoMal)
if instr(lcase(Request.QueryString(item)), lcase(palavrasDoMal(j))) > 0 then
response.Redirect("erro.asp?d=injectionQueryString")
end if
next
next
'Verificando o que é enviado por request.form
for each item in request.form
for j = lbound(palavrasDoMal) to ubound(palavrasDoMal)
if instr(lcase(Request.form(item)), lcase(palavrasDoMal(j))) > 0 then
response.Redirect("erro.asp?d=injectionForm")
end if
next
next
' Verifica o que está sendo passado via cookies
for each item in request.Cookies
for j = lbound(palavrasDoMal) to ubound(palavrasDoMal)
if instr(lcase(Request.Cookies(item)), lcase(palavrasDoMal(j))) > 0 then
response.Redirect("erro.asp?d=injectionCookies")
end if
next
next
end function
'Aqui chamamos a função
sqlInjection()
%>
Esse arquivo deve ser inserido no topo de todas as páginas que você quiser verificar, por exemplo, na página login.asp
<!--#include file="sqlinjection.asp"-->
<%
' Resto do código
%>
Simples, vc deve ter uma tabela ou coluna na tabela de usuários que vai o nome do usuário que fez o cadastro.
No insert vc coloca para inserir o nome do usuário que esta fazendo o cadastro.
https://www.facebook.com/webprogramation
Att;