ASPcenter.net

22 febbraio 2010

Un semplice Quiz in ASP

Archiviato in: Quiz e Sondaggi — Tag:, — lukeonweb @ 11:02

Molti siti mettono a disposizione dei propri utenti dei quiz o dei test valutativi per verificare delle conoscenze, oppure dei quiz generici come semplici passatempo.

La soluzione lato server è ottimale perchè è possibile utilizzare un codice molto più snello rispetto ad un codice lato client in modo da far si che l’utente non sbirci le risposte esatte nel codice sorgente stesso della pagina… anche se mi fanno morire dalle risate quelli che imbrogliano al solitario :-)

Di seguito vi propongo un codice molto semplice:

<%@LANGUAGE = VBScript%>

<form method="post" action="quiz.asp?r=OK">
 <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>
 <br>
 <input type="submit" value="Verifica">
</form>

<%
 If Request.QueryString("r") = "OK" Then
  Dim ris
  ris = 0
  If Request.Form("dom_1") = "A" Then ris = ris + 1
  If Request.Form("dom_2") = "B" Then ris = ris + 1
  If Request.Form("dom_3") = "C" Then ris = ris + 1
  If Request.Form("dom_4") = "A" Then ris = ris + 1
  If Request.Form("dom_5") = "B" Then ris = ris + 1
  Response.Write "Hai risposto esattamente a " & ris & " domande!"
 End If
%>

I radio button che compongono le varie risposte hanno, per convenzione, un nome del tipo dom_NumeroProgressivo che torna utile per ampliare il Quiz, nell’esempio composto da 5 domande. La sesta sarà identificata come dom_6.

Nessun commento »

Non c'è ancora nessun commento.

RSS feed dei commenti a questo articolo. TrackBack URL

Lascia un commento

ASPcenter.net è il blog italiano su ASP, ASP.Net, VB.Net, C# e Visual Studio - Funziona con WordPress