Mam problem ze zliczaniem wyników z testu wielokrotnego wyboru (checkbox). Mianowicie przykładowo do pytania mam 3 odpowiedzi i jeśli zaznaczę wszystkie lub 2 i jedna z nich jest prawidłowa to uzyskuję 1 punkt a chciałbym, żeby w przypadku zaznaczenia złej i dobrej odpowiedzi dawało 0 punktów.
formularz:
<form action="wyniki.php" method="POST">
<?php
include "connection.php";
$sql = "SELECT * FROM pytania";
$query = mysql_query($sql) or die(mysql_error());
$i=0;
$k=0;
echo "<table>";
echo "<tr>";
?>
<?php
while($row = mysql_fetch_array($query))
{
$idt = $row['idt'];
$pytanie = $row['pytanie'];
$wybor1 = $row['wybor1'];
$wybor2 = $row['wybor2'];
$wybor3 = $row['wybor3'];
$odpowiedz = $row['odpowiedz'];
if ($k % 1 == 0 && $k != 0 )
{
echo '</tr><tr>';
}
?>
<?php echo "<td>";
echo $pytanie . "<br/>";
echo '<input type="checkbox" name="checkbox'.$i.'" value=1 />' .$wybor1 . '<br />';
echo '<input type="checkbox" name="checkbox'.$i.'" value=2 />' .$wybor2 . '<br />';
echo '<input type="checkbox" name="checkbox'.$i.'" value=3 />' .$wybor3 . '<br />';
$i++;
$k++;
}
echo "</td>";
echo "</tr>";
echo "</table>";
?>
<tr><td>
<br/>
<center><input type=submit name="submit" value="Wyniki"/></center><br/>
</td></tr>
</form>
wyniki.php:
<?php include 'connection.php';
$zapytanie = ('SET NAMES utf8');
$w = mysql_query($zapytanie) or die(mysql_error());
$i=0;
$k=0;
$wynik=0;
$sql = "SELECT * FROM pytania";
$query = mysql_query($sql) or die(mysql_error());
while($row = mysql_fetch_array($query))
{
$idt = $row['idt'];
$pytanie = $row['pytanie'];
$wybor1 = $row['wybor1'];
$wybor2 = $row['wybor2'];
$wybor3 = $row['wybor3'];
$odpowiedz = $row['odpowiedz'];
$wybor = $row['wybor'.$_POST['checkbox'.$i]];
if ($wybor == $odpowiedz)
{
$wynik++;
}
else
{
}
if ($k % 1 == 0 && $k != 0 )
{
echo '<br/>';
}
echo '<b>Pytanie: </b>' .$pytanie .'<br/>';
echo '<b>Twoja odpowiedź: </b>' . $wybor . '<br />';
echo '<b>Prawidłowa odpowiedź: </b>' .$odpowiedz .'<br/>';
$k++;
$i++;
}
echo "<br/>";
echo "<h2><font color='red'>Twój wynik: " .$wynik . '/' . $i . ' ! '."</h2>";
?>
Moja tabela ma postać: idt|pytanie|wybor1|wybor2|wybor3|odpowiedz