Ayuda con sistema de usuarios

Hola quisiera que me ayudaras con un sistema de autentificación de usuarios.
<%@include file="inicio.jsp" %>
<%
boolean entrada=true;
if(entrada != true)
{
out.print("No puede entrar directamente");
}
%>
<%@include file="conexion.jsp"%> // aqui se encuentran los datos de conexion
<%
Connection con;
Statement stm;
ResultSet tb; String sql="" ;
try
{
Class.forName(driverbd);
con=DriverManager.getConnection(url,loginbd,passwordbd);
stm=con.createStatement();
String usuario=request.getParameter("usuario");
String pass=request.getParameter("pass");
sql="SELECT * FROM usuarios where usuario='"+usuario+"' and pass='"+pass+"'";
tb=stm.executeQuery(sql); //ejecutando el SELECT
// Mi problema es que quiero saber si el resultado es true o false para saber si encontró a el suario con el nombre y la contraseña correcta o si no existe
if(también ! = false)
{
// si lo encontro lo agrega a la sesion que pondre mas adelante
response.sendRedirect("index.jsp");
}
else
{
// si no lo encuentra le dice que hay un error
out.print ("Error en el Login");
}
}
catch(Exception e)
{
out.print("Error en JDBC "+e);
}
%>
Respuesta
1
Primero que todo disculpa la demora, tenia que entregar un proyecto y eso me tenia muy ocupado. Lo primero que debes saber es que un objeto tipo ResultSet no es un booleano así que no puedes compararlo con true o false, lo que debes ver es si el ResultSet tiene algún valor. Osea si ejecuta el comando también. next(). Siguiendo la filosofía de que un la llave primaria es en login de usuario vas a hacer esto.
boolean login=false;
while(tb.next()){
login = true;
}
/*y ahora comparas con el booleano login*/
if(login){
response.sendRedirect("index.jsp");
}else{
out.print ("Error en el Login");
}
Y listo Fácil Verdad!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas