как рассчитывать викторины - PullRequest
1 голос
/ 30 мая 2020

Хочу сделать тестовую систему. Для этого в базе данных есть столбцы «id», «вопрос», «правильно», «A», «B», «C», «D», «E». И в столбце «правильный» я ввожу одно из значений «A», «B», «C», «D» или «E». Однако после ввода ответа пользователя я не могу автоматически найти правильный и неправильный номер на странице результата. php. И я не могу подсчитать оценку пользователя.

это форма:

<form action="result.php" method="post">
    <?php 
    /*n */
    include 'ayar.php';
    $v=$db->prepare("select * from riyaziyyat where id IN(1,2,3)");
    $v->execute(array());
    $x=$v->fetchALL(PDO::FETCH_ASSOC);
    foreach ($x as $key => $b) {  
    ?> 
    <div class="cavablardivi">
    <input type="radio" name="<?php echo $b["id"];?>" value="A"><span class="radioherf">A</span><br>
    <input type="radio" name="<?php echo $b["id"];?>" value="B"><span class="radioherf">B</span><br>
    <input type="radio" name="<?php echo $b["id"];?>" value="C"><span class="radioherf">C</span><br>
    <input type="radio" name="<?php echo $b["id"];?>" value="D"><span class="radioherf">D</span><br>
    <input type="radio" name="<?php echo $b["id"];?>" value="E"><span class="radioherf">E</span><br>
    </div>
    <?php } ?>
    <input type="submit" name="send" value="finnish">
</form>

и это результат. php:

<?php 

$corrects=0;
$wrongs=0;
include 'ayar.php';
$v=$db->prepare("select * from riyaziyyat where id IN(1,2,3) limit 100");
$v->execute(array());
$x=$v->fetchALL(PDO::FETCH_ASSOC);
foreach ($x as $key => $b) {
if ($_POST['$b["id"]'] and $_POST['$b["id"]']==$b["correct"]) {
	$corrects++;} 
 else { $wrongs++;}
} 

echo "your corrects ---> ".$corrects; 
echo "<br>"; 
echo "your wrongs ---> ".$wrongs;
         
?>

введите описание изображения здесь

...