Visualizzazione dei risultati da 1 a 6 su 6

Discussione: test a scelta multipla

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    116

    test a scelta multipla

    ciao a tutti, voglio creare un test a risposte multiple che poi da come risultato il profilo di un personaggio qui potete trovare un esempio di cosa sto parlando ----->test

    qualcuno mi puo suggerire come faccio a calcolra i dati che vengono inseriti e che poi danno il profilo risultante ? grazie a chiunque voglia rispondere

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    116
    up

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    116
    up

  4. #4
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    come facciamo a dirti come fare se non sappiamo come vuoi gestire i dati che otterrai?
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    116
    ok cerchero di essere piu chiaro anche perche io volevo sapere se qualcuno potrebbe suggermi come analizzare i dati per ottenere il risultato che spiegavo prima ^^.

    <form action="index.php?id=personaggio" method="post">
    <tr>
    <td><span class="mez">1. Qual'è il tuo colore preferito?</span></td>
    </tr>
    <tr>
    <td><input type="radio" name="one" value="1">Blu/Azzurro</td>
    </tr>
    <tr>
    <td><input type="radio" name="one" value="2">Arancione</td>
    </tr>
    <tr>
    <td><input type="radio" name="one" value="3">Nero</td>
    </tr>
    <tr>
    <td><input type="radio" name="one" value="4">Verde</td>
    </tr>
    <tr>
    <td><input type="radio" name="one" value="5">Marrone</td>
    </tr>
    <tr><td height="7"></td></tr>
    <tr>
    <td><span class="mez">2. Se vedi qualcuno che viene pestato in un vicolo, cosa fai?</span></td>
    </tr>
    <tr><td><input type="radio" name="two" value="1">Vai a pestare quei bastardi</td>
    </tr>
    <tr><td><input type="radio" name="two" value="2">Fai l'eroe e dici "prendete me non lui!"</td>
    </tr>
    <tr><td><input type="radio" name="two" value="3">Ti butti in mezzo e fai vedere quanto sei forte</td>
    </tr>
    <tr><td><input type="radio" name="two" value="4">Non vorrei essere lì vicino, fanno paura...</td>
    </tr>
    <tr><td><input type="radio" name="two" value="5">Tiro fuori la mia arma e inzio a sparare cercando di colpirli</td>
    </tr>
    <tr>

    <td align="center"><input type="submit"></td>

    </tr>

    </form>

    come vedete questo sopra e un form che ho preso da un sito che offre un test simil e a come lo vorrei io, qui sopra ci sono solo due domande ma io vorrei arrivare come minimo a dieci, vorrei sapere come calcolare se l'utente ha dato per esempio piu risposte con valor 1, per poi assegnare un dato profilo a quel tipo di risposta, pero essendo 10 domande dovrei anche calcolare nel caso le risposte date diano come risultato per esempio 5 variabili con valore 1 e 5 con valore 5 in questo caso, cioe in caso di pareggio diciamo ^^, vorrei assegnare ancora un altro tipo di profilo, come potrei fare?

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    116
    ho come dire, risolto il problema facendo affidamento su quel poco che so del php il risultato e piuttosto buono visto che mi permette di potere assegnare 7 profili uno per ogni caso di maggioranza del tipo di risposta (per esempio maggioranze di risposte A), e uno nel caso di pareggio tra le varie domande, (per esempio 5 A e 5 B), purtroppo per il conteggio delle varie risposte ho dovuto usare molti if che sommano 1 per ogni risposta di quel tipo, mi chiedevo c'e un altro sistema per farlo? grazie a chunque voglia rispondere.

    Codice PHP:
    <?
    $quiz1
    =$_POST['one'];
    $quiz2=$_POST['two'];
    $quiz3=$_POST['three'];
    $quiz4=$_POST['four'];
    $quiz5=$_POST['five'];
    $quiz6=$_POST['six'];
    $quiz7=$_POST['seven'];
    $quiz8=$_POST['eight'];
    $quiz9=$_POST['nine'];
    $quiz10=$_POST['ten'];

    if
    (
    $quiz1==or $quiz2==or $quiz3==or $quiz4==or $quiz5==or $quiz6==or $quiz7==or $quiz8==or $quiz9==or $quiz10==0)
    {
    echo 
    "alcune domande non sono state selezionate <A href=\"form.php\">torna indietro";
    }
    else
    {
    $a=0;$b=0;$c=0;$d=0;$e=0;

    if(
    $quiz1==1)$a++;if($quiz2==1)$a++;if($quiz3==1)$a++;if($quiz4==1)$a++;if($quiz5==1)$a++;if($quiz6==1)$a++;if($quiz7==1)$a++;if($quiz8==1)$a++;if($quiz9==1)$a++;if($quiz10==1)$a++;

    if(
    $quiz1==2)$b++;if($quiz2==2)$b++;if($quiz3==2)$b++;if($quiz4==2)$b++;if($quiz5==2)$b++;if($quiz6==2)$b++;if($quiz7==2)$b++;if($quiz8==2)$b++;if($quiz9==2)$b++;if($quiz10==2)$b++;

    if(
    $quiz1==3)$c++;if($quiz2==3)$c++;if($quiz3==3)$c++;if($quiz4==3)$c++;if($quiz5==3)$c++;if($quiz6==3)$c++;if($quiz7==3)$c++;if($quiz8==3)$c++;if($quiz9==3)$c++;if($quiz10==3)$c++;

    if(
    $quiz1==4)$d++;if($quiz2==4)$d++;if($quiz3==4)$d++;if($quiz4==4)$d++;if($quiz5==4)$d++;if($quiz6==4)$d++;if($quiz7==4)$d++;if($quiz8==4)$d++;if($quiz9==4)$d++;if($quiz10==4)$d++;

    if(
    $quiz1==5)$e++;if($quiz2==5)$e++;if($quiz3==5)$e++;if($quiz4==5)$e++;if($quiz5==5)$e++;if($quiz6==5)$e++;if($quiz7==5)$e++;if($quiz8==5)$e++;if($quiz9==5)$a++;if($quiz10==5)$e++;

    if (
    $a $b and $a $c and $a $d and $a $e)
    {
    echo 
    " il tuo profilo corrisponde alla A";
    }

    elseif (
    $b $a and $b $c and $b $d and $b $e)
    {
    echo 
    "il tuo profilo corrisponde alla B";
    }

    elseif (
    $c $a and $c $b and $c $d and $c $e)
    {
    echo 
    "il tuo profilo corrisponde alla c";
    }

    elseif (
    $d $a and $d $b and $d $c and $d $e)
    {
    echo 
    "il tuo profilo corrisponde alla D";
    }

    elseif (
    $e $a and $e $b and $e $c and $e $d)
    {
    echo 
    "il tuo profilo corrisponde alla E";
    }

    else
    {
    echo 
    "il tuo profilo corrisponde a tutti gli altri casi di pareggio";
    }
    }
    ?>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.