Salve
mi stavo cimentando con un questionario a risposte multiple con le risposte fisse ma volevo usare un modo in cui queste fossero visualizzate dinamicamente via random ma mi si pongono vari problemi, tipo ogni domanda ovviamente deve avere 1 risposta giusta e tre diverse dalla giusta ma anche diverse tra loro e che non si devono ripetere troppo all'interno del questionario...secondo voi è umanamente possibile?..ho dato diverse occhiate alle discussioni già aperte...ma non sono riuscito a trovare come dipanare la matassa....
Anzi quello che devo capire io prima è come strutturare il processo....Mi potete aiutare?
Grazie 1000 x la collaborazione
Stano.
Vi allego la bozza del codex quello che ho scopiazzato a dx e sx ...
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Test a risposta immediata</title>
<SCRIPT LANGUAGE="JavaScript">
<!-- Inizio
var risp = new Array;
var rispdata = new Array;
var punteggio = 0;
risp[1] = "a";
risp[2] = "b";
risp[3] = "c";
risp[4] = "d";
risp[5] = "d";
risp[6] = "c";
risp[7] = "b";
risp[8] = "b";
risp[9] = "c";
risp[10] = "b";
function Verifica(domanda, risposta) {
if (risposta != risp[domanda]) {
if (!rispdata[domanda]) {
rispdata[domanda] = -1;
alert("Purtroppo la risposta è errata:\n\nil punteggio rimane " + punteggio);
}
else {
alert("E' già stata fornita una risposta a questo item!");
}
}
else {
if (!rispdata[domanda]) {
rispdata[domanda] = -1;
punteggio++;
alert("Esatto!\n\nIl punteggio sale a " + punteggio);
}
else {
alert("E' già stata fornita una risposta a questo item!");
}
}
}
function LivelloSuccessivo () {
if (punteggio > 10) {
alert("Cheater!");
}
if (punteggio >= 7 && punteggio <= 11) {
alert("Accesso consentito! Occorre inserire una nuova batteria di test ...")
//sostituire la riga precedente con: self.location="altrotest.htm" per inserire il proseguimento del test
}
else {
alert("Per proseguire occorre rispondere esattamente ad almeno 7 item! Il test può essere ripetuto ricaricando la pagina.")
}
}
// End -->
</SCRIPT>
<script>
<!-- Inizio
function fototesto(foto,testo){
this.foto=foto
this.testo=testo
}
arr = new Array()
arr[arr.length]=new fototesto('divieto_files/054.gif','testo 1');
arr[arr.length]=new fototesto('divieto_files/055.gif','testo 2');
for(i=0;i<arr.length;i++){
casuale = Math.floor((arr.length) * Math.random());
temp = arr[casuale]
arr[casuale]=arr[i]
arr[i]=temp
}
// End -->
</script>
</head>
<body>
La frase del giorno è:
<script>var randomnumber=Math.floor(Math.random()*11)</script>
<script language="JavaScript1.1" src="motivatequote.js"></script>
<script>for(i=0;i<arr.length;i++)
document.write('<img src=\"'+arr[i].foto+'" width="100" height="100" border="0">'+arr[i].testo+'
');
<!-- document.write("<img src=\""+img[ran]+"\">"'+arr[i].testo+'
'); -->
</script>
<p align="center">
<font color="#000080">Per superare il test occorre rispondere esattamente
almeno a 7 item.</font><p align="center">
<noscript>JavaScript è disabilitato. L'attivazione può essere effettuata con
Strumenti Opzioni.</noscript>
<FORM>
<div align="center"><center>
<table border="0" width="600" cellspacing="0" cellpadding="0">
<tr>
<td width="10%" valign="top" align="left"><table border="1" width="100%" cellspacing="1" cellpadding="2">[img]divieto_files/054.gif[/img]</table></td>
<td width="1%"></td>
<td><table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" valign="top" align="left"><table border="1" width="80%" cellspacing="0" cellpadding="0">
<tr>
<td width="10%" align="center" bgcolor="#000080"><font face="Arial" color="#FFFFFF">1</font></td>
<td width="175%" colspan="2" bgcolor="#99CCFF"><font face="Arial" color="#000080">Cosa significa questo Cartello Stradale?</font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">a</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">Divieto di Transito</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="a" name="q1" onClick="Verifica(1, this.value)"></font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">b</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">Direzione Obbligatoria Dritto</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="b" name="q1" onClick="Verifica(1, this.value)""></font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">c</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">Curva a Destra</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="c" name="q1" onClick="Verifica(1, this.value)"></font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">d</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">Divieto di Sosta</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="d" name="q1" onClick="Verifica(1, this.value)"></font></td>
</tr></table></tr></table></tr></table>
</p>
<table border="0" width="600" cellspacing="0" cellpadding="0">
<tr>
<td width="10%" valign="top" align="left"><table border="1" width="100%" cellspacing="1" cellpadding="2">[img]divieto_files/055.gif[/img]</table></td>
<td width="1%"></td>
<td><table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" valign="top" align="left"><table border="1" width="80%" cellspacing="0" cellpadding="0">
<tr>
<td width="10%" align="center" bgcolor="#000080"><font face="Arial" color="#FFFFFF">1</font></td>
<td width="175%" colspan="2" bgcolor="#99CCFF"><font face="Arial" color="#000080">Cosa significa questo Cartello Stradale?</font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">a</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">Direzione Obbligatoria Sinistra</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="a" name="q2" onClick="Verifica(2, this.value)"></font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">b</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">Divieto di Accesso</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="b" name="q2" onClick="Verifica(2, this.value)""></font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">c</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">Curva a Sinistra</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="c" name="q2" onClick="Verifica(2, this.value)"></font></td>
</tr>
<tr>
<td width="10%" align="center" bgcolor="#FFFFFF"><font face="Arial">d</font></td>
<td width="164%" bgcolor="#FFFFFF"><font face="Arial">STOP</font></td>
<td width="11%" align="center" bgcolor="#FFFFFF"><font face="Arial"><input type="radio" value="d" name="q2" onClick="Verifica(2, this.value)"></font></td>
</tr></table></tr></table></tr></table>
</p>
</center>
</div>
<CENTER>
<input type=button onClick="LivelloSuccessivo()" value="Passa al livello successivo!">
</CENTER>
</FORM>
<center>
<font face="arial, helvetica" size="-2">basato su un free JavaScripts di The JavaScript Source</font>
</center>
</body>
</html>
e non esitate a commentare...ANZI....