ci stavo arrivando, ma ho fatto le prove e mi sembra di non aver risolto niente....

Codice PHP:
PreparedStatement ps connection.prepareStatement("SELECT * FROM ISCRITTI WHERE username=\"?\" and password=\"?\"");
    try
    {
      
ps.setString(1getUsername());
      
ps.setString(2getPassword());
      
ps.executeQuery();
      if(
ps.next()) {
               
nome ps.getString("nome");
             
cognome ps.getString("cognome");
             
email ps.getString("email");
             
username ps.getString("username");
             
password ps.getString("password");
             
hobby ps.getString("hobby");
             
auth=true//se l'utente esiste nel database
         

    }
    finally
    {
      
ps.close();
    } 
Se provo dell'sql injection vedo che i caratteri non vengono filtrati, sbaglio qualcosa nella preparazione della query?