L'applicazione pratica con jsp che viene analizzata in seguito consiste nella creazione di un sondaggio, in cui gli utenti di un sito possono rispondere ad una domanda scegliendo tra le risposte proposte ed eventualmente visualizzare i risultati parziali delle votazioni. Come per tutti i sondaggi seri realizzati per un sito Internet è previsto il controllo del doppio voto, reso impossibile dalla memorizzazione degli indirizzi ip degli utenti che votano.
L'applicazione è costituita da 4 file:
- sondaggio.htm, contenente il form da cui l'utente risponde alla domanda
- vota.jsp, che esegue la votazione proveniente dal form
- risultati.jsp, che visualizza i risultati parziali delle votazioni
- sondaggio.mdb, il database che gestisce tutto il sondaggio. Questo è costituito da due tabelle. La prima "frequenza" contiene un campo chiamato "risp" di tipo byte che indica il numero della risposta, e un campo "frequenze" di tipo intero che indica il numero di volte che si è votato per la rispettiva risposta. Nell'esempio, con 4 possibili risposte al sondaggio, la tabella è stata completata inserendo nelle prime 4 righe del campo "risp" i valori 0-1-2-3 e nel campo "frequenze", ovviamente, i valori 0-0-0-0. La seconda tabella si chiama "ip_tab" e contiene in un campo "ip" di tipo testo la lista degli indirizzi ip di tutti gli utenti che hanno effettuato il voto.
Vediamo nel dettaglio gli altri 3 file:
Sondaggio.htm
Visualizza il file sondaggio.htm in un'altra finestra.
Il codice contenuto nei tag body del file potrà essere copiato in qualsiasi parte di un qualsiasi documento html, e dovrà essere personalizzato inserendo tanti radio button quante sono le possibili risposte al quesito e incrementando sempre di uno il valore dell'input eventualmente aggiunto.
Vota.jsp
Questo file esegue in pratica la votazione, aggiornando il database dopo aver fatto il controllo sull'ip dell'utente. Non deve essere necessariamente modificato. Al limite si possono personalizzare i messaggi di eseguita o fallita votazione.
Visualizza il file vota.jsp in un'altra finestra.
Risultati.jsp
Visualizza il file risultati.jsp in un'altra finestra.
Questo è il file che esegue il compito più complicato. Deve estrarre dal database il numero di utenti che hanno votato in totale e per ogni singola risposta, calcolare la percentuale e stampare una breve tabella di riepilogo e un grafico che riassume visivamente l'andamento del sondaggio. Nel file appena visto deve essere modificato il numero di possibili risposte (riga 20) e il valore delle stringhe contenenti le risposte (righe 25-28). Tutto il resto del codice può rimanere invariato.
Il risultato a video della pagina risultati.jsp risulterà pressappoco così: