<?php
include $_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.'inc'.DIRECTORY_SEPARATOR.'class_application.php';
Application::one()->init();
header('Content-type: text/html;charset=utf-8');
$arInterests = array(
'Биология',
'География',
'Геология',
...
'Музыка',
'Физкультура и спорт'
);
$arQuestions = array(
'Знакомиться с жизнью растений и животных.',
'Занятия и чтение книг по географии.',
'Читать художественную или научно-папулярную литературу о геологических экспедициях.',
'Уроки и книги по анатомии и физиологии человека.',
'Выполнять ежедневную домашнюю работу.',
....
);
// массив ответов пользователя
if (empty($_SESSION['arAnswers'])) {
$arAnswers = array();
} else {
$arAnswers = $_SESSION['arAnswers'];
}
// определим какой сейчас вопрос
if (! isset($_REQUEST['questionid'])) {
// если вдруг у нас уже есть ответы - то можно предложить продолжить предыдущие ответы
if (sizeof($arAnswers) > 0) {
$questionid = sizeof($arAnswers);
} else {
$arParams = array();
Application::one()->setTitle('Карта Интересов - тест');
Application::one()->showPage('test_interests_start','main', $arParams);
die();
}
} else {
$questionid = intval($_REQUEST['questionid']);
}
if ($questionid == -1) {
$_SESSION['arAnswers'] = array();
$arParams = array();
Application::one()->setTitle('Карта Интересов - тест');
Application::one()->showPage('test_interests_start','main', $arParams);
die();
}
// есть ли ответ, на вопрос
if (isset($_POST['answer'])) {
// и существует вопрос на который дан ответ
if (isset($arQuestions[$questionid])) {
$arAnswers[$questionid] = intval($_POST['answer']);
$questionid++;
}
}
$_SESSION['arAnswers'] = $arAnswers;
if (isset($arQuestions[$questionid])) {
$arParams = array(
'questionid'=> $questionid,
'sQuestion' => $arQuestions[$questionid],
'currentstep' => $questionid+1,
'totalstep' => sizeof($arQuestions)
);
Application::one()->setTitle('Вопрос '.$arParams['currentstep'].' из '.$arParams['totalstep'].' теста Карта Интересов');
//отобразим страницу со следующим вопросом
Application::one()->showPage('test_interests','main', $arParams);
} else {
//var_dump($_SESSION['arAnswers']);
$arParams = array();
$arScores = array();
$iTheme = 0;
for($i=0;$i<sizeof($arAnswers);$i++) {
if (! isset($arScores[$iTheme])) {
$arScores[$iTheme] = 0;
}
$arScores[$iTheme] += $arAnswers[$i];
$iTheme++;
if ($iTheme == 29) {
$iTheme=0;
}
}
$arParams = array(
'arInterests' => $arInterests,
'arScores' => $arScores
);
Application::one()->showPage('test_interests_result','main', $arParams);
}