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

Detalhes De Cada Usuario


§uiciDa£

Pergunta

20 respostass a esta questão

Posts Recomendados

  • 0

olha

o ideal, é guardar os dados em sessions mesmo!

Tipo.. quando o cara fizer login, você guarda lá:

session("usuario") = variavel_usuario

session("codigo_usuario") = variavel_codigo_usuario <- eu uso sempre assim.. cada usuario tem um codigo, e o campo codigo é chave primaria da tabela de usuarios..

aí, quando você quiser listar os dados do cara, você faz um select, apontando pro WHERE codigo_usuario = session("codigo_usuario")

Ou, você pode simplesmente, na hora que ele fizer login, criar várias sessions.. e cada uma delas com um respectivo valor do usuario que logou..

tipo:

session("usuario") = usuario

session("senha") = senha

session("nome") = nome

session("email") = email..

e assim vai..

Essa é a idéia..

Alguma duvida?

t+

Link para o comentário
Compartilhar em outros sites

  • 0

isso tudo ae tah no banco?

você sabe conectar ao banco?

sabe montar um sql que faz um SELECT?

tipo:

sql = "select * from tabela where id='"&Session("id")&"'"
set rs = conexao.execute(sql)
aí, teria que tomar cuidado com as aspas na comparação com o ID. se o campo ID for numerico, não vai aspa simples.. se for STRING vai. depois do select, você recupera os valores assim:
nome = rs("nome")
idade = rs("idade")
email = rs("email")

Alguma duvida?:

t+

Link para o comentário
Compartilhar em outros sites

  • 0

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<!--#include file="../Connections/geral.asp" -->
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<%
If session("id") = "" Then
Response.Write "Você não está logado!"
Response.End
End If

else("id") = rs("id") Then
%>
<%
sql = "select * from usuarios where id='"&Session("id")&"'"
set rs = conexao.execute(sql)
rs("nome")
rs("idade")
rs("email")
%>

</body>
</html>

isso esta certo ?

é q não da pra mim testa sad.gif to sem iis

Editado por dark0
Link para o comentário
Compartilhar em outros sites

  • 0

e ae, beleza?

Bom, primeiro, eu editei seu post, pra colocar entre as tags CODE pra ficar melhor na tela.

no seu codigo, só está errado assim:

você abriu um IF.

Depois, você fechou ele.

E Aí, tentou dar um ELSE nele.

No ASP, diferentemente do PHP, se você quiser usar o ELSE junto com o IF, você não pode colocar END IF. porque senao, você fecha tudo, e o else fica perdido.

O correto, é tirar o END IF, e colocar ele no fim do codigo.. onde realmente fecha seu IF.

Depois, logo após o SQL, você só colocou os rs("nome") (os recordsets..)

Se você quiser mostrar eles, você deve usar o Response.WRITE.

Veja:

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

<!--#include file="../Connections/geral.asp" -->

<html>

<head>

<title>Untitled Document</title>

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

</head>

<body>

<%

If session("id") = "" Then

Response.Write "Você não está logado!"

Response.End

elseIf session("id") = rs("id") Then

%>

<%

sql = "select * from usuarios where id='"&Session("id")&"'"

set rs = conexao.execute(sql)

response.write rs("nome")

response.write rs("idade")

response.write rs("email")

end if

%>

</body>

</html>

Depois, presta atenção no tipo de variavel que é a ID. Se for número, ou autonumeração, vai dar erro de sintaxe. Se for número, fica:

id="&session("id")&"

Entendeu?

t+

Link para o comentário
Compartilhar em outros sites

  • 0

da uma olhada, porque eu alterei o codigo depois de postar.. hehe

eu reli, e vi errinhos..

veja se você olhou certinho..

t+

Link para o comentário
Compartilhar em outros sites

  • 0

olha

você tem conexao com o banco?

aqui:

sql = "select * from usuarios where id='"&Session("id")&"'"

set rs = conexao.execute(sql)

você diz que você está selecionando tudo da tabela usuarios onde o campo id da tabela usuarios é igual ào valor da sessão.

como está seu campo ID? é o que? numero? texto? data?

na linha de baixo, você ta executando o sql. ou seja, tá usando a conexao.

se você não tem conexao com o banco, vai dar erro.

se os tipos de dados, do campo id forem incompativeis, vai dar erro..

isso tudo tá ok?

Link para o comentário
Compartilhar em outros sites

  • 0

faz um teste aí:

<html>

<body>

<%

url_conexao = Server.MapPath("banco.mdb")

set conexao = Server.CreateObject("ADODB.Connection")

conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&url_conexao

If session("id") = "" Then

Response.Write "Você não está logado!"

Response.End

elseIf session("id") = rs("id") Then

%>

<%

sql = "select * from usuarios where id='"&Session("id")&"'"

set rs = conexao.execute(sql)

response.write rs("nome")

response.write rs("idade")

response.write rs("email")

end if

%>

</body>

</html>

só muda o caminho do banco.. ali onde ta em azul..

Link para o comentário
Compartilhar em outros sites

  • 0

quepagina de pesquisa?

quando você abre, e dá o erro, deve aparecer alguma mensagem no IE, dizendo do erro..

Link para o comentário
Compartilhar em outros sites

  • 0

não:( ele eedireciona essa pagina de erro pra uma de pesquisa e não da p voltar

tipo, a pagina de ero da ie se torno uma de pesquisa de um corno

num tria como eu fazer assim, declara uma variavel pelo sessione prucurrar ?

tipo var1 = session("id"

e deps um select com where "'&var1&"' ??????????????

Link para o comentário
Compartilhar em outros sites

  • 0

olha galera ve o q vocês axam q esta dando erro

paginas

logando.asp (dps de efetuaro login)

<%
Set Conn = Server.CreateObject("AdoDb.Connection") 
Conn.provider="Microsoft.Jet.OLEDB.4.0" 
Conn.connectionstring=Server.Mappath("usuarios.mdb") 
Conn.open

Response.Cookies("usuario") = Request.Form("usuario")
Response.Cookies("senha") = Request.Form("senha")

If Request.Form("autologin") = "True" Then
Response.Cookies("autologin") = "True"
Response.Cookies("usuario") = Request.Form("usuario")
Response.Cookies("senha") = Request.Form("senha")
End If

login2 = Request.Form("usuario")
senha2 = Request.Form("senha") 

SQL = "select * from usuarios where login = '"&login2&"' and senha = '"&senha2&"' "
Set RS = Conn.Execute(SQL)

If RS.EOF Then
  Response.Redirect "negado.asp"
  Response.End
End If

session("nivel_acesso") = RS("nivel")
session("usuario") = RS("id")
Response.Redirect "painel.asp"
%> 
painel.asp (onde ta dando erro)
<html>
<body>
<%
url_conexao = Server.MapPath("geral.mdb")
set conexao = Server.CreateObject("ADODB.Connection")
conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&url_conexao

If session("id") = "" Then
Response.Write "Você não está logado!"
Response.End

elseIf session("id") = rs("id") Then
%>
<%
sql = "select * from usuarios where id='"&Session("id")&"'"
set rs = conexao.execute(sql)
response.write rs("nome")
response.write rs("idade")
response.write rs("email")
end if
%>

</body>
</html>

e eu tnho o BD, geral.msb. com a tabela usuarios

porque nam ta dando certo ?

Link para o comentário
Compartilhar em outros sites

  • 0

e ae

olha só:

<html>
<body>
<%
url_conexao = Server.MapPath("geral.mdb")
set conexao = Server.CreateObject("ADODB.Connection")
conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&url_conexao

If session("id") = "" Then
Response.Write "Você não está logado!"
Response.End

[COLOR=red][B]elseIf session("id") = rs("id") Then[/B][/COLOR]
%>
<%
sql = "select * from usuarios where id='"&Session("id")&"'"
set rs = conexao.execute(sql)
response.write rs("nome")
response.write rs("idade")
response.write rs("email")
end if
%>

</body>
</html>

ta vendo a linha em vermelho?

você esta dizendo:

senao, se session("id") = rs("id") então..

faz o select..

Agora eu te pergunto..

isso aqui: rs("id") tem valor?

Onde você pega valor pra ele?

sendo que, RS é o objeto que executa seu sql.. (que está abaixo do IF..)

veja bem.. se você entende o q eu falei..

Mas basicamente não funciona porque você está fazendo um IF que compara a sessão, com o RS("id"), sendo que o RS("id") só ganha valor se entrar nesse IF.. (ou seja.. não vai ganhar valor nunca!)

Entendeu?

O que você quer comparar com a session, para mostrar os dados?

o campo ID vem de outra pagina?

t+

Link para o comentário
Compartilhar em outros sites

  • 0

Pelo que vi, você tem que atribuir um valor ao seu rs("id").

Como?

Assim... você seta um recordset e execute ele juntamente com uma string sql, dae depois compara usando IF.

Simples!!!

Link para o comentário
Compartilhar em outros sites

  • 0

olha ficou assim, e ainda num funciona

<%@LANGUAGE="JAVASCRIPT"%>
<!--#include file="Connections/geral.asp" -->
<%
var Recordset1 = Server.CreateObject("ADODB.Recordset");
Recordset1.ActiveConnection = MM_geral_STRING;
Recordset1.Source = "SELECT * FROM usuarios where id='"&Session("id")&"'";
Recordset1.CursorType = 0;
Recordset1.CursorLocation = 2;
Recordset1.LockType = 1;
Recordset1.Open();
var Recordset1_numRows = 0;
%>
<html>
<body>
<%

If session("id") = "" Then
Response.Write "Você não está logado!"
Response.End

elseIf session("id") = rs("id") Then
%>
<%
response.write rs("nome")
response.write rs("idade")
response.write rs("email")
end if
%>

</body>
</html>
<%
Recordset1.Close();
%>

Link para o comentário
Compartilhar em outros sites

  • 0

Isso não funfou?

Qual é o erro? Linha?

Faça algo mais simples, sem usar o dreamweaver.

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...