Jump to content


Photo

Checking answers in quiz...


  • Please log in to reply
1 reply to this topic

#1 Oyster

Oyster
  • New Members
  • Pip
  • Newbie
  • 2 posts

Posted 28 October 2006 - 08:50 PM

Hi,

I'm writing my own quiz and I need one script. When the user choose bad answer under the quiz he'll see the text that his answer isn't good, and if he choose correct answer he'll see the text that his answer is good. Here you have the code of my quiz:

<tr>
    <td class="text" align="left">
<b><font SIZE="3"><center>Quiz about my site</center></font></B><br></b>
<b>1. When I made this site?</b>
<br><INPUT TYPE="radio" NAME="ans1" value="1"> in 1996
    <br><INPUT TYPE="radio" NAME="ans2" VALUE="2"> in 1992
<br><INPUT TYPE="radio" NAME="ans3" VALUE="3"> in 2006
    <br><INPUT TYPE="radio" NAME="ans4" VALUE="4"> in 2003
<br>
<br><form><input TYPE="button" VALUE="Next question" onClick="parent.location.href='quiz2.html'"></FORM>

</td>
</tr>
</table>

#2 ksteuber

ksteuber
  • Members
  • PipPipPip
  • Advanced Member
  • 32 posts
  • LocationCalifornia, USA

Posted 29 October 2006 - 08:01 AM

First of all, does this html work? If so I'm suprised.

Let me redo this a bit...
(quiz.php)
<?php
$answerkey=array(1=>3,2=>2);
if (isset($_POST['Number']))
{
$grade=$_POST['grade'];
if ($answerkey[$_POST['Number']]==$_POST['Answer'])
$grade++;
}
?>
<html>
  <head>
    <title>Take my Quiz</title>
    <style type="text/css">
      table {
        position: absolute;
        left: 5px
      }
      h3 {
        text-align:center;
      }
    </style>
  </head>
  <body>
    <?php
    if (($answerkey[$_POST['Number']]==$_POST['Answer'])&& isset($_POST['Number']))
    echo "You got it correct!";
    if (($answerkey[$_POST['Number']]!=$_POST['Answer'])&& isset($_POST['Number']))
    echo "Sorry, You got it wrong.";
    ?>
    <table>
      <tr>
        <td>
         <h3>Quiz about my site</h1>
         <?php
         if (!isset($_POST['Number']))
         {
         echo <<<END
         <form action="test.php" method="POST">
         1. When did I make this site?
         <input type="hidden" name="Number" value="1">
         <input type="hidden" name="grade" value="0">
         <INPUT TYPE="radio" NAME="Answer" value="1"> in 1996
         <INPUT TYPE="radio" NAME="Answer" VALUE="2"> in 1992
         <INPUT TYPE="radio" NAME="Answer" VALUE="3"> in 2006
         <INPUT TYPE="radio" NAME="Answer" VALUE="4"> in 2003
         <input TYPE="submit" VALUE="Next question"></FORM>
END;
         } elseif ($_POST['Number']==1) {
         echo <<<END
         <form action="test.php" method="POST">
         2. Who made this site?
         <input type="hidden" name="Number" value="2">
	 <input type="hidden" name="grade" value="$grade">
         <INPUT TYPE="radio" NAME="Answer" value="1"> Ksteuber
         <INPUT TYPE="radio" NAME="Answer" VALUE="2"> Oyster
         <INPUT TYPE="radio" NAME="Answer" VALUE="3"> the Yeti
         <INPUT TYPE="radio" NAME="Answer" VALUE="4"> Mike Moore
         <input TYPE="submit" VALUE="Finish"></FORM>
END;
         } elseif ($_POST['Number']==2) {
          echo "Congratulations, you finished the test. You got $grade out of 2 correct. That's ",$grade*100/2," percent!";
         }
         ?>
        </td>
      </tr>
    </table>
  </body>
</html>

Is that what you were looking for?




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users