JaneH Posted March 3, 2014 Share Posted March 3, 2014 Hi guys, I'm a newbie when it comes to PHP and I'm wrecking my head trying to figure this out. Ok, so I've created an MCQ with 5 questions using PHP and mySQL. My issue is that the quiz displays the score for each individual answer. I want to display the total score only. For example, if the user gets all five questions right the output is: 100100100100100. Similarly, if the user gets 4 questions right it displays something lile 1001000100100. Radio buttons for MCQ: echo '<br><b>',$myrow["Question"],'</b><br> <br><input type="radio" name="ans'.$myrow["Q_ID"].'" value="A1">'.$myrow["A1"].'<br> <input type="radio" name="ans'.$myrow["Q_ID"].'" value="A2">'.$myrow["A2"].'<br> <input type="radio" name="ans'.$myrow["Q_ID"].'" value="A3">'.$myrow["A3"].'<br> <input type="radio" name="ans'.$myrow["Q_ID"].'" value="A4">'.$myrow["A4"].'<br> <br>'; Scores for MCQ: if (isset($_POST['submit'])) { $CorrectAns = 0; $WrongAns = 0; if ($_POST['ans'.$myrow["Q_ID"]] == $myrow["Correct"]) { $CorrectAns ++; } else { $WrongAns ++; } $NumofQs = $CorrectAns + $WrongAns; $Total = ($CorrectAns / $NumofQs) * 100; echo $Total; } } } Can anybody help? Thanks! Link to comment https://forums.phpfreaks.com/topic/286684-radio-button-calculation/ Share on other sites More sharing options...
X5HOST Posted April 7, 2014 Share Posted April 7, 2014 Hi Jane H, It looks like you need a while loop within your code, otherwise it will just be adding 1 point to the defined variable(s). Check the snippet that I have included below for you. if (isset($_POST['submit'])) { $CorrectAns = 0; $WrongAns = 0; $count = 0; while ($count <= 5) { if ($_POST['ans'.$myrow["Q_ID"]] == $myrow["Correct"]) { $CorrectAns ++; } else { $WrongAns ++; } } } $count++; } $NumofQs = $CorrectAns + $WrongAns; $Total = ($CorrectAns / $NumofQs) * 100; echo $Total; } Link to comment https://forums.phpfreaks.com/topic/286684-radio-button-calculation/#findComment-1475258 Share on other sites More sharing options...
joel24 Posted May 23, 2014 Share Posted May 23, 2014 You can also set your radio buttons to be an array, echo '<br><b>',$myrow["Question"],'</b><br> <br><input type="radio" name="ans['.$myrow["Q_ID"].']" value="A1">'.$myrow["A1"].'<br> <input type="radio" name="ans['.$myrow["Q_ID"].']" value="A2">'.$myrow["A2"].'<br> <input type="radio" name="ans['.$myrow["Q_ID"].']" value="A3">'.$myrow["A3"].'<br> <input type="radio" name="ans['.$myrow["Q_ID"].']" value="A4">'.$myrow["A4"].'<br> <br>'; and then in your php foreach ($_POST['ans'] AS $key=>$value) { //$key will = $myrow["Q_ID"]; //$value will = $myrow["Ax"] } Link to comment https://forums.phpfreaks.com/topic/286684-radio-button-calculation/#findComment-1480609 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.