Login... Direcionando cada usuario para uma pagina diferente

9 respostas
Poulghet
Boa Noite

Estou tentado fazer uma pagina de login, magostari que cada usuario ao fazer login direcionace para uma pagina diferente, se o que estou usando hoje:

<%

try

{

Class.forName(“org.postgresql.Driver”);

Connection con = DriverManager.getConnection(“jdbc:postgresql://localhost:5432/postgres,postgres,senha);

Statement st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);

if (request.getParameter(“usuario”) != null)

{

ResultSet rs = st.executeQuery(“select * from login where log_usuario = '”+

request.getParameter(“usuario”)+"'and log_senha = ‘"+

request.getParameter(“senha”)+"’");
if (rs.next())

     response.sendRedirect("index.jsp");
      else
      out.println("Voce nao tem acesso ao sistema");
   }
 
   }

    catch(ClassNotFoundException erroClass)
    {
       out.println("Classe Driver JDBC não foi localizado, erro = "+erroClass);
    }

    catch(SQLException erroSQL)
    {
       out.println("Erro de conexao com o Banco de dados, erro = "+erroSQL);
    }

%>

9 Respostas

rockstorm

Qual a sua dúvida?

Poulghet

A minha duvida é o seguinte, na configuracao que coloquei acima o usuario que colocar a senha é direcionado para uma pagina so, e o que quero é que cada usuario seja direcionado para uma pagina diferente

RodyBr

Dica: Gravar usuários e fazer esse tipo de redirecionamento tudo no código fonte do programa não fica legal. Eu montaria algo um pouco mais elaborado, mas melhor de dar manutenção (exemplo sem muitos detalhes):

a) criaria um banco de dados em que armazenaria algo do tipo:

|| Nome do Usuário | Grupo de Acesso | senha ||
|| fulano  | A | abc123 
|| ciclano | B | xyz987

b) o programa faria a leitura dos dados e faria a busca na tabela de usuários no BD:

"Select * from tb_usuarios_sistema where nome_do_usuario = tb_usuarios_sistema.nome_do_usuario and senha_do_usuario = tb_usuarios_sistema.senha"

c) se o usuário não existe ou a senha está errada você nega o acesso, se está ok, no programa de acesso você cria as deceisões de acordo com o grupo do usuário que ele faz parte:

Caso tb.grupo_de_acesso == 'A' abre a pagina a.htm Caso tb.grupo_de_acesso == 'B' abre a pagina b.htm

:wink:

Poulghet

Valeu RodyBr , vou testar e logo posto que o resultado.

Poulghet

É o seguinte estudando um pouco descobrir umas coisa, mais ainda não funcionou, eu vi alguns topicos que ligou uma luz no fim do tunio, um foi o http://imasters.uol.com.br/artigo/1504 , e usando essas ideias eu quero que o funcionario que logar esteja em um grupo (ou sessão) Ex:

Exemplo 1
Quando o Poulghet logar ele seja direcionado para a pagina http://10.10.10.10/index.html

e

Quando o José logar seja direcionado para pagina http://192.168.0.2/index2.html

bom no banco de dados foi criado uma coluna de login outro senha e outra de nivelacesso

eu tenho uma pagina chamada login.jsp

<%

try

{

Class.forName(“org.postgresql.Driver”);
Connection con = DriverManager.getConnection("jdbc:postgresql://localhost/postgres","nome do bando","senha");
		
                   if (request.getParameter("usuario") != null)
		  {
			Statement st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                                                                               ResultSet.CONCUR_READ_ONLY); 
										
			ResultSet rs = null;
			          rs = st.executeQuery("select * from login where log_usuario = '"+
			                                request.getParameter("usuario")+"' and log_senha = '"+
			                                request.getParameter("senha")+"'");
		     
			 session("nivel_acesso") = null;
			 {
			 rs = st.executeQuery("select * from login where log_nivelacesso");
			 }
			 if session("nivel_acesso") = 1 Then
			           response.sendRedirect("http://10.10.10.10/index.html");
			 
			if session("nivel_acesso") = 2 Then
			           response.sendRedirect("http://192.168.0.2/index2.html");
		
		   }
		
   }
     catch(ClassNotFoundException erroClass)
     {
         out.println("Classe Driver JDBC não foi localizado, erro = "+erroClass);
     }
     catch(SQLException erroSQL)
     {
         out.println("Erro de conexão com o Banco de dados, erro = "+erroSQL);
     }

%>

Poulghet

oi pessoal se alguem puder me ajudar com um link ou algo que possa mostrar o caminho eu agradeço, ou ate dizer se etoou no camminho ou nao,

obrigado

mateusprado

Ola Poulghet. Percebi que vc é novo no forum, apensa pra facilitar a leitura, coloque seus codigos sempre dentro da tag code ok?

Boa sorte.

Poulghet

Valeu pela dica!!

<%
try
{
Class.forName("org.postgresql.Driver");

Connection con = DriverManager.getConnection("jdbc:postgresql://localhost/postgres","nome do bando","senha");

if (request.getParameter("usuario") != null)
{
Statement st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);

ResultSet rs = null;
rs = st.executeQuery("select * from login where log_usuario = '"+
request.getParameter("usuario")+"' and log_senha = '"+
request.getParameter("senha")+"'");

session("nivel_acesso") = null;
{
rs = st.executeQuery("select * from login where log_nivelacesso");
}
if session("nivel_acesso") = 1 Then
response.sendRedirect("http://10.10.10.10/index.html");

if session("nivel_acesso") = 2 Then
response.sendRedirect("http://192.168.0.2/index2.html");

}

}
catch(ClassNotFoundException erroClass)
{
out.println("Classe Driver JDBC não foi localizado, erro = "+erroClass);
}
catch(SQLException erroSQL)
{
out.println("Erro de conexão com o Banco de dados, erro = "+erroSQL);
}
%>
peczenyj

Parece o caso de usar um Strategy.

Criado 6 de agosto de 2008
Ultima resposta 26 de ago. de 2008
Respostas 9
Participantes 5