[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Пишу онлайн тест
MadMike
Начал писать онлайн тест и застрял. Нужна помощь.

ТЗ:
- данные в БД
- вопросы выводятся постранично
- у каждого вопроса два ответа (все ответы уникальны. вопросы типа - выберите одно из утверждений)
- в конце вывести на какой вопрос какой дан ответ

Что написал:

session_start();

$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('id');
$query->from('#__aaa_online_tests_questions');
$query->where("test_id = '1'");
$query->group("id");
$db->setQuery($query) or die("запрос1 не сработал");
$data = $db->loadObjectList();

$a=0;
foreach ($data as $var)
{
$a++;
$_Session[$a] = $var->id; //засунул в массив сессии все id вопросов текущего теста
$end_id = $_Session[$a]; //id последнего вопроса
}


$count=$_Session['1']; //ставим счетчик на первый вопрос

echo 'Вопрос №'.$count.': ';

$query = $db->getQuery(true);
$query->select('question,A,B');
$query->from('#__aaa_online_tests_questions');
$query->where("id = {$count}");
$db->setQuery($query) or die("запрос1 не сработал");
$data = $db->loadAssoc();
$q = $data['question'];
$a = $data['A'];
$b = $data['B'];
?>


<form action="#" method="POST">
<h2><?php
echo $q; ?></h2>
<p><input
type="radio" name="answer<?php echo $count; ?>" value="a">A) <?php echo $a;?></p>
<p><input
type="radio" name="answer<?php echo $count; ?>" value="b">B) <?php echo $b;?></p>
<p><input
type="submit" name="next" value="Далее"></p>
<?php
if($count == $end_id) {echo "<p>Завершить тест</p>";} ?>
</form>


<?php
if (isset($_POST['next'])) //ЕСЛИ НАЖАТА КНОПКА "ДАЛЕЕ"
{
//вывести следующий вопрос как???
}


Первый вопрос вывелся без проблем. Все id вопросов в массиве в сессии есть.
Теперь не могу понять как проверить что ответ выбран и самое главное увеличить счетчи чтобы вывести второй вопрос.

_____________
Мы не знаем что это такое, если бы мы знали что это такое, мы не знаем что это такое!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.