julia_m | Bonjour,
Je voudrai faire un module de recherche. Pour ce faire, j'ai fait un formulaire ou l'on choisi son critere et lorsqu'on valide celui-ci un tableau apparait qui concerne toute les saisie avec ce critère. J'ai propcéder de la sorte:
Voici mon formulaire rechAffaire.jsp
Code :
- <form name = "rechAffaire" method ="post" action="/AppRevege/rechAff">
- <fieldset>
- <legend>Rechercher par n°affaire</legend><br />
- <span>n°Affaire :</span> <select name="affaire" id="affaire" style = "width: 120px">
- <option value = -1>-------n°affaire-------</option>
- <%
- DBConnexion dbc_aff = new DBConnexion();
- String sql_aff = "SELECT num_affaire FROM numero_aff ORDER BY num_affaire";
- ResultSet resultat_aff = dbc_aff.recupereRequete(sql_aff);
- while(resultat_aff.next())
- {
- out.print("<option value = "+resultat_aff.getString("num_affaire" )+">"+resultat_aff.getString("num_affaire" )+"</option>" );
- }
- dbc_aff.closeConnexion();
- %>
- </select>
- </fieldset>
- <%
- List<List<String>> list = new ArrayList<List<String>>();
- Iterator it = list.iterator();
- out.write("<TABLE BORDER=1 width='100%'><TR><TH>Id</TH><TH>N°Affaire</TH><TH>N°CTV</TH><TH>N°CCS</TH><TH>N°</TH><TH>Type Voie</TH><TH width='25%'>Nom Voie</TH><TH>CP</TH></TR>" );
- while (it.hasNext())
- {
- List<String> record = (List<String> )it.next();
- Iterator it2 = record.iterator();
- out.write("<tr>" );
- while (it2.hasNext())
- {
- out.write("<td>" + it2.next() + "</td>" );
- }
- out.write("</tr>" );
- }
- out.write("</table>" );
- %>
- </form>
- <center><img
- src="images/valider.png"
- onmouseover="this.src='images/validerhover.png';"
- onmouseout="this.src='images/valider.png';"
- onclick="document.getElementById('rechAffaire').submit();"
- /></center>
|
Voici la traitement de ce formulaire
Code :
- String chp_affaire = request.getParameter("affaire" );
- String url = "jdbc:oracle:thin:@.....";
- String login = "...";
- String password = ".......";
- List<List<String>> list = (List<List<String>> )request.getAttribute("Liste" );
- try{
- Connection dbc = DriverManager.getConnection(url,login,password);
- if (chp_affaire != null)
- {
- PreparedStatement pstmt_affaire = dbc.prepareStatement("SELECT id_fouille,num_ctv,num_ccs,num_adr,nom_type_voie,nom_voie,num_cp FROM fouille, ccs,numadr,nomvoie,typevoie,code_postal,numero_aff WHERE fouille.id_numero_aff = numero_aff.id_numero_aff AND fouille.id_ccs = ccs.id_ccs AND fouille.id_numAdr = numadr.id_numAdr AND fouille.id_nom_voie = nomvoie.id_nom_voie AND fouille.id_type_voie = typevoie.id_type_voie AND fouille.id_cp = code_postal.id_cp AND num_affaire= ?" );
- pstmt_affaire.setString(1, chp_affaire);
- ResultSet resultat_affaire = pstmt_affaire.executeQuery();
- ResultSetMetaData rsmd = resultat_affaire.getMetaData();
- while (resultat_affaire.next())
- {
- List<String> record = new ArrayList<String>();
- for (int i = 0; i < rsmd.getColumnCount(); i++)
- {
- record.add(resultat_affaire.getString(i+1));
- }
- list.add(record);
- }
- request.setAttribute("Liste", list);
- request.getRequestDispatcher("/rechAffaire.jsp" ).forward(request, response);
- dbc.close();
- }
- dbc.close();
- }
- catch(Exception e){
- e.printStackTrace();
- }
|
|