-
January 4th, 2018, 08:03 AM
#1
how to fetch the option selected by user while attempting the quiz made through servl
Hi All,
I am trying to develop an online quiz through Servlets and Jsp. I am using MYSQl as the backend database. The requirement is to display few random questions to user. I have to store the results of the quiz in a separate table. The table should have the details such as username, question presented to each user ,whether it was correct or incorrect
Currently I am able to display all the questions on a single web page .
But I am unable to fetch the answers selected by the user while attempting the quiz. I need to store each option selected by user and transfer it to a JSP page.
Below is the code :-
Code:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String url = "jdbc:mysql://127.0.0.1:3306/Quiz";
String username1="root";
String password1="root";
PrintWriter out= response.getWriter();
PreparedStatement st = null;
ResultSet results = null;
int limit=3;
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con= DriverManager.getConnection(url,username1,password1);
String sql="SELECT Questions.Question, Questions.option1, Questions.option2,Questions.option3, Questions.option4,Questions.correctanswer FROM Questions order by RAND() limit ?";
st = (PreparedStatement) con.prepareStatement(sql);
st.setInt(1,limit);
results = st.executeQuery();
int i=1;
while (results.next())
{
String r1, r2, r3, r4, r5,r6;
r1 = results.getString(1);
r2 = results.getString(2);
r3 = results.getString(3);
r4 = results.getString(4);
r5 = results.getString(5);
r6 = results.getString(6);
out.println("<BODY BGCOLOR='powderblue'></BODY>" +
"<FORM method=\"post\" action= \"Results.jsp\" >" +
"<TABLE BORDER = 2 CELLPADDING = 4 CELLSPACING = 2>" +
"<TR><TD COLSPAN = 6 ALIGN = CENTER><H2><B>Quick Quiz</B></H2></TD></TR>");
out.println("<TR><TD>" + r1 + "</TD></TR>");
out.println("<TR><TD><input type = \"radio\" name = \"answer\" id=\"input1\" value = \"1\" required> " + r2 + "</TD></TR><BR>");
out.println("<TR><TD><input type = \"radio\" name = \"answer\" id=\"input2\" value = \"2\">" + r3 + "</TD></TR><BR>");
out.println("<TR><TD><input type = \"radio\" name = \"answer\" id=\"input3\" value = \"3\">" + r4 + "</TD></TR><BR>");
out.println("<TR><TD><input type = \"radio\" name = \"answer\" id=\"input4\" value = \"4\">" + r5 + "</TD></TR><BR>");
out.println("</TABLE>");
session.setAttribute("question"+i,r1);
session.setAttribute("correctanswer"+i, r6);
if (i <3)
{
out.println("</FORM></BODY></HTML>");
}
else
{
out.println("<BR><BR><INPUT type = \"submit\" value = \"Press to Submit\"></form></body></html>" );
}
i++;
}
// session.setAttribute("selectedanswer1",(String)(request.getParameter("answer")) ); ---not working as expected
results.close();
st.close();
con.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Request you to help me in fetching the result of the quiz.
I was also trying to display each questions in a separate web page and giving an option of "Next" button to move to the next question but I was unable to do that. So I tried other way and gave all the questions on single page .But I am unable to fetch the option selected by user while attempting the quiz..
The required option which I have used is also not working properly.
Please help me in fetching the answer selected by user.
Thanks
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|