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