Duvida d noob....login e senha

5 respostas
M

salve galera!!!

estou com um peqeno problema…
tipo, sab o login e senha, entaum, no meu site da pa entra com qalqer login e senha, mas eu botei uns comando do mysql e outras coisas pa ve se a seha e o login corresponden, mais da pa entra com qalqer um…

entao qeria sebe se alguem podia me ajuda nesse kso…

5 Respostas

R

Kra, poderia mandar seu código? deve ter algum problemão ae…

Não entendi pq já não mandou de uma vez o código…

flw

M

blz ta ai

aki a pagina index, ond se efetua o login

index .style3 { color: #FFFFFF; font-size: 18px; font-weight: bold; font-family: Verdana, Arial, Helvetica, sans-serif; }

Titans Locadora


Login

Senha








aki no action do botao ela puxaria uma classe do netbeans


a classe q a pagina login esta puxando

import <a href="http://java.io">java.io</a>.<em>;

import javax.servlet.</em>;

import javax.servlet.http.<em>;

import java.sql.</em>;

import conexao.ConexaoBD;
public class entrar extends HttpServlet {

public void doPost(HttpServletRequest req,

HttpServletResponse res)

throws ServletException, IOException {
res.setContentType("text/plain");


         String login = req.getParameter("login");
         String senha = req.getParameter("senha");

String conectar=“select * from cliente where nm_login=’”+login+"‘and ds_senha=’"+senha+"’";

ConexaoBD con = null;
               
                try  {
                     con = new ConexaoBD();
                      ResultSet rs = con.executeQuery(conectar);
                     PrintWriter out = res.getWriter();
                               if (rs.next()){
                                  //criação da sessão
                                  int cod = 1;
                                  HttpSession session = req.getSession(true);
                                  session.setAttribute("autorizado",new Integer(cod));
                                 res.sendRedirect("/titans/frames.html");
                               }
                               else{
                         res.sendRedirect("/titans/erroLogin.jsp");
                               }
                  }
                  catch (SQLException e){
                  //Não está conseguindo se conectar ao banco
                   res.sendRedirect("/titans/erroentrar.html");
                   return;
                  }
                  finally {
                   if (con!=null) {
                   con.fecharConexao();
                   con=null;
                   }
             }
            }
 }

agora segue a pagina seguinte apos efetuar o login

<%

if (session.getAttribute(autorizado)==null)

response.sendRedirect(index.jsp);

%>
Página Principal -- Titans Locadora

nessa pagina, no inicio ela faz uma comparação, se o usuario estiver “autorizado” ele pod navegar normalmente
mas senaum estiver volta para a pagina index, bom eh esse o comparativo q eu tinha em mente, talvez esteja errado

R

Bom kra, não sei o porquê vc faz um select * na tabela cliente, sendo que não usará nenhuma das colunas. não seria mais fácil entao, fazer um COUNT(1) ???

Bom, sobre seu problema, não consegui identificar nada de tão errado.Não tenho certeza também, se é retornado null de uma sessão q não foi gravada… teria q debugar isso ae pra ver qual o comportamento.

Vc pelo menos está recebendo o login e senha no servlet???

Está certinha essa sua classe ConexaoDB?!?

Flw

M

ta dexa qeto…
nem eu entendi direito oq ta dando, mais flw ae pela intenssaum

B
Cara faça um teste para ver se os parametros estão sendo passados corretamente, antes de chegar no seu try tente dar um System.out.printl ou um showMessageDialog para mostrar se o login e a senha estão de acordo com o que você entrou no jsp.. Fiz um exemplo parecido com o seu so que usando PreparedStatement :
private void pesquisaUsuario(String login,Integer senha) throws SQLException
	{
		
                     PreparedStatement pstm = conn.prepareStatement("SELECT * FROM cliente WHERE Upper(nm_login) = ? and  ds_senha = ?");
	     pstm.setString(1,nome.toUpperCase());
	     pstm.setInt(2,senha);
	     ResultSet rs= pstm.executeQuery();
                     if(!rs.next()){
		 throw new SQLException("Nome ou senha não encontrados!");
	     }
                   }
Ai depois você pode fazer:
String login = req.getParameter("login"); 
String senha = req.getParameter("senha"); 
 ....
 try{
     
     pesquisaUsuario(login,Integer.parseint(senha));
      int cod = 1; 
      HttpSession session = req.getSession(true); 
      session.setAttribute("autorizado",new Integer(cod)); 
      res.sendRedirect("/titans/frames.html"); 
   
}catch(SQLException e){
     res.sendRedirect("/titans/erroLogin.jsp"); 
}
......
Vai tentando ai pois o erro pode ser em alguma coisa boba..flw []'s
Criado 8 de dezembro de 2007
Ultima resposta 8 de dez. de 2007
Respostas 5
Participantes 3