Un semplice Quiz in Asp
Molti siti mettono a disposizione dei propri utenti dei Quizo dei Test valutativi per verificare delle conoscenze, oppuredei quiz generici come semplici passatempo. La soluzioneserver-side è ottimale perchè èpossibile utilizzare un codice molto più snellorispetto ad un codice client-side, in modo da far si chel'utente non sbirci le risposte esatte nel codicesorgente stesso della pagina... anche se mi fanno moriredalle risate quelli che imbrogliano al solitario :-)
Di seguito vi propongo un codice molto semplice commentatonelle sue fasi salienti:
<%@LANGUAGE = JScript%><html> <head> <title>Un semplice Quiz in Asp</title> </head><body><h2 align="center">Quiz</h2><table width="40%" align="center"><form method="post" action="quiz.asp?r=OK"> <tr> <td><b>1) Qual'è la capitale dell'Italia?</b><br><input type="radio" name="dom_1" value="A"> Roma<br><input type="radio" name="dom_1" value="B"> Napoli<br><input type="radio" name="dom_1" value="C"> Milano<br><b>2) Di che colore era il cavallo di Napoleone?</b><br><input type="radio" name="dom_2" value="A"> Nero<br><input type="radio" name="dom_2" value="B"> Bianco<br><input type="radio" name="dom_2" value="C"> Trasparente O_o<br><b>3) Qual'è il nome di Tasso?</b><br><input type="radio" name="dom_3" value="A"> Giuseppe<br><input type="radio" name="dom_3" value="B"> Tiberio<br><input type="radio" name="dom_3" value="C"> Torquato<br><b>4) Come viene chiamata la vecchia capitale di Malta?</b><br><input type="radio" name="dom_4" value="A"> Silent City<br><input type="radio" name="dom_4" value="B"> Dead Town<br><input type="radio" name="dom_4" value="C"> Spirits City<br><b>5) Chi è l'autore del romanzo Dracula?</b><br><input type="radio" name="dom_5" value="A"> Robert L. Stevenson<br><input type="radio" name="dom_5" value="B"> Bram Stocker<br><input type="radio" name="dom_5" value="C"> F. F. Coppola<br> </td> </tr> <tr> <td align="right"><input type="submit" value="Verifica"></td> </tr> <tr> <td align="center"><% // CONTROLLO CHE IL QUIZ VENGA VERIFICATO DALL'UTENTE var r = new String(Request.QueryString("r")); // CONTROLLO CHE L'UTENTE EFFETTUI IL QUIZ if (r != "OK") Response.Write(" "); else { // RECUPERO I VOTI var dom_1 = Request.Form("dom_1"); var dom_2 = Request.Form("dom_2"); var dom_3 = Request.Form("dom_3"); var dom_4 = Request.Form("dom_4"); var dom_5 = Request.Form("dom_5"); // INCREMENTO LE RISPOSTE ESATTE var ris = 0; if (dom_1 == "A") ris += 1; if (dom_2 == "B") ris += 1; if (dom_3 == "C") ris += 1; if (dom_4 == "A") ris += 1; if (dom_5 == "B") ris += 1; // STAMPO A VIDEO IL RISULTATO Response.Write("Hai risposto esattamente a " + ris + " domande!"); }%> </td> </tr></form></table></body></html>
I radio button che compongono le varie risposte hanno, perconvenzione, un nome del tipodom_NumeroProgressivo che torna utile perampliare il Quiz, nell'esempio composto da 5 domande. Lasesta sarà identificata come dom_6.
- Articolo precedente Creiamo un autoresponder: un autorisponditori per le nostre email
- Articolo successivo Leggere i feed RSS con ASP