Ich habe ein Servlet geschrieben, das eine HTML-Seite erstellt, die den Inhalt einer Datenbank zeigt. Der Code lautet:HTML-Formular, Optionsfeld und 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>");
Ich habe eine Optionsschaltfläche zu jeder Zeile hinzugefügt. Mit diesem Code kann ich im Browser eine Tabelle mit dem Inhalt der Datenbank anzeigen. Wenn ich auf submit klicke, möchte ich das vale 'k' für die ausgewählte Zeile an ein anderes Servlet senden. Ich habe eine schwere Zeit damit. Ich denke, ich sende den Wert falsch. Reicht es im zweiten Servlet aus, getParameter() zu verwenden, um die Informationen zu erhalten?
Danke!
Ich verstehe es immer noch nicht. Was ist was im Anfrage-Objekt transmited, welches Format hat es? Wenn ich eine Optionsschaltfläche auswähle und auf die Senden-Schaltfläche klicke, ist es nicht nur die Optionsschaltfläche, was an das Servlet übertragen wird? Wenn ich Knopf in Reihe Nr. 1 und im Servlet wähle, verwende: String value = request.getParameter ("titulo1"); Wenn ich den Wert von 'Wert' drucke, heißt es, es ist null –
Verwenden Sie Methode = "GET" in Ihrem Formular. Beim Absenden solltest du eine URL wie myservlet? Titulo1 = k in der Adresszeile sehen. Die Parameter werden an die Servlet-URL übergeben, die im Anforderungspfad codiert ist. Mit der POST-Methode werden sie am Körper der Anfrage eingefügt, aber es ist eigentlich das Gleiche. – kgiannakakis