J'ai écrit une servlet qui construit une page html montrant le contenu d'une base de données. Le code est:Formulaire Html, bouton radio et servlet
Statement st = (Statement) conexion.createStatement();
ResultSet rs = st.executeQuery("select * from audiolist");
while (rs.next())
{
contador++;
out.println("<tr>");
String k = rs.getString("Tittle");
String l = rs.getString("Autor");
String m = rs.getString("Album");
out.println("<td>"+"<input type=\"radio\" name=\"titulo<%="+contador+"%>\"value=\""+k+"\">");
out.println("<td>" + k + "</td>");
out.println("<td>" + l + "</td>");
out.println("<td>" + m + "</td>");
out.println("</tr>");
}
out.println("</table></center>");
out.println("<tr><td colspan=2><input type=submit></td></tr>");
out.println("</form>");
J'ai ajouté un bouton radio à chaque ligne. Avec ce code, je peux afficher dans le navigateur une table avec le contenu de la base de données. Lorsque je clique sur soumettre, je veux envoyer à une autre servlet la variable 'k' pour la ligne sélectionnée. J'ai du mal avec ça. Je pense que j'envoie la valeur incorrectement. Dans la deuxième servlet, est-ce suffisant d'utiliser getParameter() pour obtenir l'info?
Merci!
Je ne le comprends toujours pas. Qu'est-ce qui est transmis dans l'objet requête, quel est le format? Lorsque je sélectionne un bouton radio et que je clique sur le bouton "Envoyer", n'est-ce pas simplement ce bouton radio qui est transmis à la servlet? Si je sélectionne le bouton dans la ligne numéro 1 et dans le servlet, utilisez: String value = request.getParameter ("titulo1"); Lorsque j'imprime la valeur de 'value', il est dit null –
Utilisez method = "GET" dans votre formulaire. Lors de la soumission, vous devriez voir une URL comme myservlet? Titulo1 = k dans la barre d'adresse. Les paramètres sont transmis à l'URL de servlet codée sur le chemin de la requête. Avec la méthode POST, ils sont insérés dans le corps de la requête, mais c'est en fait la même chose. – kgiannakakis