Для решения данной задачи мы будем использовать простую HTML форму и POST запросы. И так приступим. Создадим простую форму с полями radio
, то есть для выбора вариантов ответа и кнопкой для результатов.
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<form>
<div>
<p>Сколько будет 2 + 2?</p>
<label><input type="radio">3</label>
<label><input type="radio">2</label>
<label><input type="radio">1</label>
</div>
<div>
<p>Сколько будет 5 - 2?</p>
<label><input type="radio">3</label>
<label><input type="radio">2</label>
<label><input type="radio">1</label>
</div>
<button type="submit">Результат</button>
</form>
</body>
</html>
Отлично мы создали форму. Теперь в неё нужно внести изменения, чтобы она работала. Добавим атрибуты к форме: method="POST"
- метод отправки php форм. action="result.php"
- файл, в который будут отправляться результаты формы.
<form action="result.php" method="POST">...</form>
Присвоим уникальное имя вариантам ответов, чтобы объединить их между собой, для одного вопроса - name = "имя"
:
<label><input name="q1" type="radio">c. 1</label>
А теперь пропишем имя ответов к каждому варианту, например value = "a"
.
<label><input name="q1" type="radio" value="a">c. 1</label>
В результате получим:
<form action="result.php" method="POST">
<div>
<p>Сколько будет 2 + 2?</p>
<label><input name="q1" type="radio" value="a">3</label>
<label><input name="q1" type="radio" value="b">2</label>
<label><input name="q1" type="radio" value="c">1</label>
</div>
<div>
<p>Сколько будет 5 - 2?</p>
<label><input name="q2" type="radio" value="a">3</label>
<label><input name="q2" type="radio" value="b">2</label>
<label><input name="q2" type="radio" value="c">1</label>
</div>
<button type="submit">Результат</button>
</form>
Создадим файл result.php в том же каталоге, в котором создадим скрипт теста на php для обработки и вывода результата правильных и не правильных ответов.
<?php
$ot = 0;
$not = 0;
if ($_POST[q1] == a){$ot++;} else {$not++;}
if ($_POST[q2] == a){$ot++;} else {$not++;}
?>
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<p>Правильных ответов:</p>
<p>Неправильных ответов:</p>
</body>
</html>
Описание: Здесь все довольно просто, мы создаем простое условие для каждого вопроса. Если в вопросе [q1] вариант "a", то прибавляем к переменной "$ot" + 1 ($ot - количество правильных ответов), если другой вариант то записываем в переменную $not "неправильных ответов" + 1.
Теперь выводим на страницу в html коде правильные и неправильные ответы:
<p>Правильных ответов: <?php echo $ot; ?></p>
<p>Неправильных ответов: <?php echo $not; ?></p>
Заключение. Теперь у вас есть простой тест на php и html, теперь можно и запустить его для онлайн. Вы можете добавить сколько угодно вариантов ответов по аналогии. Добавить стилей и улучшить код. Можно было все сделать намного грамотней, но проще этого не придумаешь. Работа у теста такая: выбрали варианты, нажали на кнопку результат, нас перекидывает на вторую страницу, где выводится подсчет правильных и неправильных ответов. Удачи!