login  Naam:   Wachtwoord: 
Registreer je!
 Forum

JSP puzzel, doorsturen van een hidden field lukt niet

Offline vak429 - 15/02/2006 01:29
Avatar van vak429Nieuw lid Ok ik moet voor school dus maken:
Citaat:
1. Toetsapplicatie – deel 1

Maak een eenvoudige online toetsapplicatie. De student/gebruiker aan wie de vragenlijst wordt voorgelegd moet 5 MC vragen beantwoorden. Iedere vraag wordt weergegeven in een aparte JSP pagina. Bij iedere vraag zijn 4 antwoorden gegeven. De gebruiker kiest het in zijn ogen juiste antwoord en gaat door naar de volgende vraag.

Na afloop wordt de score berekend. Ieder juist antwoord levert 2 punten op.
Gebruik voor het bijhouden van de score bij voorkeur een “hidden” tekstveld, en geen “sessievariabele”.


Ik heb hiervoor de volgende twee pagina's
  1. <%@page contentType="text/html"%>
  2. <%@page pageEncoding="UTF-8"%>
  3.  
  4. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  5. "http://www.w3.org/TR/html4/loose.dtd">
  6.  
  7. <html>
  8. <head>
  9. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  10. <title>JSP Page</title>
  11. </head>
  12. <body>
  13. <%
  14. int iscore;
  15. String score = request.getParameter("score");
  16. if (score!=null) { iscore=Integer.parseInt(score);} else {iscore=0; }
  17. String keuze = request.getParameter("keuze");
  18. if (keuze!=null){
  19.  
  20. if (keuze.equals("1"))
  21. {iscore=iscore+1;}
  22. else {iscore=iscore-1;}
  23.  
  24. // gebruik een forward action om door te gaan naar de volgende pagina !!
  25. %> <jsp:forward page="page2.jsp"></jsp:forward>
  26. <%
  27. }
  28.  
  29. else {
  30. }
  31. %>
  32.  
  33. <form method="post" action="page1.jsp">
  34. <h3>Vraag </h3>
  35.  
  36.  
  37. Ik zit nu... <br/> <input type="radio" name="keuze" value="1" />
  38. drie jaar op het IIE.
  39. <br/>
  40. <input type="radio" name="keuze" value="2" />
  41. vier jaar op het IIE.
  42.  
  43. <br/>
  44. <br/> <input type="submit" name="ok" value="OK" />
  45.  
  46. <input type="hidden" name="score" value="<%= iscore %>" >
  47.  
  48.  
  49. </form>
  50.  
  51. </body>
  52. </html>


en
  1. <%@page contentType="text/html"%>
  2. <%@page pageEncoding="UTF-8"%>
  3. <%--
  4. The taglib directive below imports the JSTL library. If you uncomment it,
  5. you must also add the JSTL library to the project. The Add Library... action
  6. on Libraries node in Projects view can be used to add the JSTL 1.1 library.
  7. --%>
  8. <%--
  9. <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
  10. --%>
  11.  
  12. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  13. "http://www.w3.org/TR/html4/loose.dtd">
  14.  
  15. <html>
  16. <head>
  17. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  18. <title>JSP Page</title>
  19. </head>
  20. <body>
  21.  
  22. <h1>JSP Page</h1>
  23.  
  24. De score is <%= request.getParameter("score") %>
  25.  
  26.  
  27.  
  28. </body>
  29. </html>


Alles werkt behalve de uitkomst. Logisch als je naar het script kijkt. De pagina forward voordat het form zelf ge-update is kortom de score wordt nooit verwerkt. In mijn opdracht staat dat ik het met een hidden field MOET doen. En ik heb hem onder de comment regel van de docent geplaatst.

Wie helpt me het puzzeltje oplossen zodat hij dus wel de score meeneemt dmv die hidden field.

BvD Sander

3 antwoorden

Gesponsorde links
Offline haytjes - 15/02/2006 13:12
Avatar van haytjes Gouden medailleGouden medaille

JS gevorderde
1) Deze site bestaat niet zomaar om iedereen zijn huiswerk op te lossen. Huiswerk is bedoeld om zelf te maken.

2) JSP = JavaServer Pages = Java
als ik hier bovenaan goed kijk zit je hier het forum van JavaSCRIPT, dus niet van Java

=> moved to "Overige"
Offline vak429 - 15/02/2006 16:34
Avatar van vak429 Nieuw lid Vraag niemand mijn huiswerk te doen, als ik er niet eerlijk bij gezet had dat het een schoolopdracht was waren er ook wel reacties zoals ik wel vaker heb gehad als ik wat voor mezelf vroeg. Maar goed kennisdeling elkaar helpen gaat hier dus niet op...
Offline haytjes - 15/02/2006 16:55 (laatste wijziging 15/02/2006 17:04)
Avatar van haytjes Gouden medailleGouden medaille

JS gevorderde
nee, 'k wil alleen maar zeggen dat ik je huiswerk niet moet maken, juist. En dat deze topic niet in JS thuis hoort. Ik heb kennis van JS, maar niet van JAVA en daarom kan 'k je ook geen antwoord geven.
En 'k denk ook dat er maar weinig mensen hier zijn die JSP kennen, hoor...
Dus het heeft niets met kennisdeling te maken, hoor, 't gaat over onwetenheid.

en 'k ken er dus niets van, maar toch eens proberen. 'k zou het anders oplossen:
page1.jsp
  1. <form method="post" action="page2.jsp">
  2. ...<input type="radio" name="keuze" value="1" />
  3. ...<input type="radio" name="keuze" value="2" />
  4. ...<input type="submit" name="ok" value="OK" />
  5. </form>
  6. </body>
  7. </html>

en dan in page2.jsp de form-handeling doen en de score doorgeven via hidden veldje.
  1. <%
  2. int iscore;
  3. String score = request.getParameter("score");
  4. if (score!=null) { iscore=Integer.parseInt(score);} else {iscore=0; }
  5. String keuze = request.getParameter("keuze");
  6. if (keuze!=null){
  7. if (keuze.equals("1"))
  8. {iscore=iscore+1;}
  9. else {iscore=iscore-1;}
  10. %>
  11. <form method="post" action="page3.jsp">
  12. ...<input type="radio" name="keuze" value="1" />
  13. ...<input type="radio" name="keuze" value="2" />
  14. ...<input type="submit" name="ok" value="OK" />
  15. ...<input type="hidden" name="score" value="<%= iscore %>" >
  16. </form>
  17. </body>
  18. </html>


'k hoop dat je het snapt. (Dus zonder <jsp:forward page="page2.jsp"></jsp:forward>, maar met een form )
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.196s