2010-08-19 4 views
0

Je veux récupérer le nom d'utilisateur de la base de données, mais il donne une page vide. Quel est le problème dans mon code?jsp programmation

<html> 
<head> 
<title>verification</title> 
</head> 
<body>  
     <%@ page import = "java.io.*" %> 
     <%@ page import = "java.sql.*" %> 
     <%@ page import = "java.lang.*" %> 
     <% 
      String eid = request.getParameter("eid"); 
      String Pwd = request.getParameter("Pwd"); 

       String db_username = "root"; 
       String db_password = "sarat"; 
       String db_url = "jdbc:mysql://localhost/empdb"; 
       String Driver = "com.mysql.jdbc.Driver"; 

     try 
      { 
       Class.forName(Driver); 
    Connection con = DriverManager.getConnection(db_url,db_username,db_password); 

      Statement st = con.createStatement(); 

String sql = "select username from user where userid = 'eid' and password = 'Pwd' "; 
       ResultSet rs = st.executeQuery(sql); 
        while(rs.next()) 
        { 
        out.println(rs.getString(1)); 
         out.println("<br/>");       
        } 
      st.close(); 
      con.close();    
     }    
     catch(Exception e) 
     { 
      out.println(e); 
      e.printStackTrace(); 
      } 
%>   

</body> 
</html> 
+0

* "Qu'est-ce qui ne va pas dans mon code?" *: [Tout ce que le code Java devrait contenir dans une classe Java] (http://stackoverflow.com/questions/3177733/howto-avoid-java-code-in- fichiers jsp). – BalusC

+0

Peut-être que vous devriez regarder la requête qui est réellement exécutée et c'est le résultat avant de nous demander de déboguer votre code ... – Jorn

Répondre

1

Essayez:

String sql = "select username from user where userid = '"+eid+"' and password = '"+Pwd+"' ";

Mais vous devez également lire sur little Bobby Tables et ses attaques par injection SQL.