Java : retourner resultat liste dans requête

Résolu
batbat52 Messages postés 141 Statut Membre -  
Herezia Messages postés 70 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour bonjour

J'ai créer une liste qui affiche les données d'un champs d'une table, aussi j'aimerais récupérer le champs selectionner et inserer le resultat dans une autre requête mais je ne sais pas quoi mettre à la place des ?????????
Voici mon code, je suis un peut perdu avec ce html et ce java.... :s

 Statement requete = con.createStatement(); 
       		ResultSet resultat = requete.executeQuery("select distinct t.sDisplayName from DeviceType t, Device d where t.nDeviceTypeID=d.nDeviceTypeID and (d.nBestStateID=6 or d.nBestStateID=5 or d.nBestStateID=10);"); 
       		ResultSet affichage= requete.executeQuery("select * from Device where sDisplayName =??????")
		
			principal.outstr("<center><h1>Liste des equipements actifs :</h1></center>",false);
		
			principal.outstr("<center>Veuillez choisir une categorie d'equipement : <FORM><SELECT name=\"nom\" size=\"1\">",false);
			while(resultat.next()) {
	
				principal.outstr("<OPTION>"+resultat.getString(1),false);
				
			
			}
			
			principal.outstr("</SELECT> </FORM>",true);
			principal.outstr("</center>",true);
		
A voir également:

3 réponses

Herezia Messages postés 70 Date d'inscription   Statut Membre Dernière intervention   11
 
Bonjour batbat52,

Avec JDBC, les saisies utilisateurs sont insérables dans des requêtes paramétrées qui s'appellent PreparedStatement
Pour plus d'information : https://java.developpez.com/faq/jdbc?page=Les-instructions-parametrees-moins-PreparedStatement#defPreparedStatement

Dans ton cas, il faudra récupérer le paramètre (la sélection utilisateur sur ton <select />) avec HTTPServletRequest#getParameter et appeler un PreparedStatement#setString avec la valeur que tu auras récupéré
0
batbat52 Messages postés 141 Statut Membre 9
 
je sais que j'en demande beaucoup mais si tu as le temps pourrais tu me faire un petit exemple stp
Merci bcp deja pr ces info ;)
0
Herezia Messages postés 70 Date d'inscription   Statut Membre Dernière intervention   11
 
De tête je dirais

Object selectedDisplayedNames = request.getParameter("nameDeTonSelect");
// Les select sont envoyés comme des tableaux de String si je me souviens bien...
if (selectedDisplayedNames instanceof String[] && ((String[])selectedDisplayedNames).length > 0) {
    // On prend le premier élément sélectionné de la liste
    String selectedDisplayedName = ((String[])selectedDisplayedNames)[0];
    preparedStatmntProjectionEquipements.setString(tonIndiceDeParametre, selectedDisplayedName);
}

Où tonIndiceDeParametre est l'indice base 1 de ton ? dans le WHERE de ta requête SELECT,
et preparedStatmntProjectionEquipements ta requête qui retourne les équipements

Je te laisse chercher pour la suite, c'est bien d'être mis sur la voie mais on apprend pas en buvant le code des autres

Attention : code non vérifié
0
batbat52 Messages postés 141 Statut Membre 9
 
oui oui merci bcp :)
0
Herezia Messages postés 70 Date d'inscription   Statut Membre Dernière intervention   11
 
Résolu ?
0