Ir para conteúdo

POWERED BY:

Arquivado

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

Diego Gonçalves

[Resolvido] Login com níveis avançado

Recommended Posts

Fala galera Expert....

 

Preciso de um exemplo, ou algo do tipo que, me habilite a ter uma ideia de como criar um sistema de login que seria da seguinte forma:

 

No sistema eu teria: planilhas com informações sobre a produção de cada funcionário, teria uma planilha com informações sobre erros na execução dos serviços etc...

 

Quando o usuário logar no sistema, eu preciso de fazer com que ele tenha acesso para download somente da suas planilhas, como se aquela página tivesse sido criada para aquele usuário.

 

Caso alguém possa me ajudar, eu agradeço !

Compartilhar este post


Link para o post
Compartilhar em outros sites

na tabela que você criar para download, coloca uma coluna com o ID do usuário, e quando ele estiver online faz um sql com a condição que quiser e com a condição que a sessão codigo do usuario seja igual a cadastrada na tabela!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando preciso criar um sistema de acesso a conteudos por niveis, crio uma tabela contendo o código uma descrição do codigo tipo cod 1: nivel de acesso total...

e depois na parte dos usuarios, alem das informações que o projeto pede, coloco também um campo com o codigo de acesso, ai no cadastro do usuario, ele também já tem o nivel de acesso ao sistema.

No sistema, defino o que será exibido para cada nivel de acesso.

 

Abraços,

Vinicius Ianni

Compartilhar este post


Link para o post
Compartilhar em outros sites

na tabela que você criar para download, coloca uma coluna com o ID do usuário, e quando ele estiver online faz um sql com a condição que quiser e com a condição que a sessão codigo do usuario seja igual a cadastrada na tabela!

Então pelo que eu entendi, terei que criar uma tabela no meu bd e, nela conteria os links dos arquivos (as planilhas) ?

 

Veja, se for isso, a estrutura da tb seria mais ou menos isso aqui:?

 

Id

Nivel

Link

----

 

 

Desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Id

Nivel

Link

ID_USUARIO

com esse ID_USUARIO você faz a comparação.

 

quando você criar o login você passa uma sessão com o ID do usuario logado, ai na parte do download você vai selecionar os downloads onde o ID da sessão é igual ao ID_USUARIO

Compartilhar este post


Link para o post
Compartilhar em outros sites

Id

Nivel

Link

ID_USUARIO

com esse ID_USUARIO você faz a comparação.

 

quando você criar o login você passa uma sessão com o ID do usuario logado, ai na parte do download você vai selecionar os downloads onde o ID da sessão é igual ao ID_USUARIO

 

Bom, acredito que estou quase...

 

O único problema que está dando é que o link só aparece para o 1° registro no bd, quando eu faço login com outro usuário que está no bd, o link aponta

 

para a própria pagina.

 

 

Segue o código, veja se pode me ajudar.

 

<% 
	   AbreConexao
	   SQL = "select * from Arquivos "
	   Set rs = conexao.execute(SQL)
	   if session("ID_Usuario") = rs("ID_Usuario") then
	   link = rs("Link")
	   end if  
  %>

Obrigado desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

todos os usuarios tem o seu proprio link?

Compartilhar este post


Link para o post
Compartilhar em outros sites

todos os usuarios tem o seu proprio link?

Sim, cada usuário terá acesso ao seu arquivo (planilhas com informações sobre produção mensal, descontos, salário etc...), para download.

 

Inclusive fiz um teste colocando o mesmo link que aponta para planilha do primeiro registro (usuário) que está cadastrado no bd, mas não deu certo, o link só está aparecendo para o primeiro registro no BD.

 

Só funciona para o primeiro registro(usuário), para os outros não está dando.

 

 

 

Caso possa me ajudar eu agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Melhor fazer a comparação direto na consulta. E você tem que fazer um While. Ex.

<%
Dim idUsuario
idUsuario = session("ID_Usuario")
If Not isNumeric(idUsuario) Then
	  idUsuario = 0
End If

AbreConexao
SQL = "select * from Arquivos WHERE ID_Usuario=" & idUsuario
Set rs = conexao.execute(SQL)
if Not rs.Eof Then
	  While Not rs.Eof
			link = rs("Link")
			Respone.Write link & "<br />"
			rs.MoveNext
	  Wend
end if  
rs.Close
set rs = Nothing
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim agora que vi que voce nao selecionou pelo id do usuario

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando eu busco pelo "ID" do usuário na instrução sql, ocorre esse erro:

 

Tipo de erro:

Microsoft JET Database Engine (0x80040E10)

Nenhum valor foi fornecido para um ou mais parâmetros necessários.

 

 

O que eu devo fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

seu id deve estar vazio

 

printa a sql na tela e post aqui o resultado

 

de onte esta recuperando os ids

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existem duas tabelas, uma tabela (LOGIN) contento Usuario, Senha, Nivel e ID_Usuario;

 

E outra tabela (Arquivos) contento ID_Usuario, Link, Nome;

 

OS IDs são recuperados no momento do login, ele recupera o ID do usuário na tabela LOGIN:

 

<% response.buffer="true" %>
<!--#Include file="conecta.asp"-->

<%

vlogin = Replace(request.form("usuario"), "'", "")
vsenha = Replace(request.form("senha"), "'", "")

AbreConexao
SQL = "select * from Login where Usuario = '"& vlogin &"' and senha = '"& vsenha &"'"
Set rs = conexao.execute(SQL)

If not rs.eof Then
session("ID_usuario") = rs("ID_Usuario")
session("Nivel") = rs("Nivel")
response.redirect "intranet/valida_nivel.asp"
else
response.redirect "login.asp?erro=sim"
End if

rs.close
FechaConexao
Set rs = nothing

%>

A página valida_nivel.asp, apenas redireciona para o respectivo nível do usuário.

 

É assim que eu estou recuperando os IDs dos usuários.

 

 

E depois faço a comparação, e exibo o link de acordo com o ID_USUARIO.

Compartilhar este post


Link para o post
Compartilhar em outros sites

E como está a outra página agora?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O erro "Nenhum valor foi fornecido para um ou mais parâmetros necessários.", acontece em qual linha? O que tem na linha?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca abaixo de:

SQL = "select * from Arquivos WHERE ID_Usuario=" & idUsuario

 

Assim:

Response.Write sql

Response.End

 

Posta o que foi exibido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso pode acontecer devido um campo nome foi digitado incorretamente, ou um ou mais dos valores em branco.

ou tentou inserir o datatype errado (por exemplo, rodeado um valor numérico com aspas, ou esqueceu-se de colocar aspas em torno de uma string).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca abaixo de:

SQL = "select * from Arquivos WHERE ID_Usuario=" & idUsuario

 

Assim:

Response.Write sql

Response.End

 

Posta o que foi exibido.

 

Aparece assim:

 

select * from Arquivos WHERE ID_Usuario=ID_4207

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.