$index = rand(0, $size); return $index; } public function checkAnswer($idQuestion, $idAnswer) { if ($this->questions[$idQuestion]['CHECK'] == $idAnswer) { return true; } else { return false; } } } $arQuestion = array(array('QUESTION' => "Сколько типов данных в PHP?", 'ANSWERS' => array(2, 4, 5, 6, 7, 8), "CHECK" => 5), array('QUESTION' => "Как обьявляеться переменная в PHP?", 'ANSWERS' => array('$var = 10;', 'int var = 10;', 'var v = 10;'), "CHECK" => 0), array('QUESTION' => "Как обьявляется массив в PHP?", 'ANSWERS' => array('$var = array();', 'int var = [];', 'var v = array;'), "CHECK" => 0), array('QUESTION' => "Как обьявляеться константа в PHP?", 'ANSWERS' => array('$var = 10;', 'define("PI", 3.14);', 'var v = 10;'), "CHECK" => 1)); $anyAnswer = new CAnyAnswer($arQuestion); if (!$_REQUEST['send']) { $index = $anyAnswer->ShowQuestion(); } if ($_REQUEST['send']) { $index = $_REQUEST['question']; if (!$anyAnswer->checkAnswer($_REQUEST['question'], $_REQUEST['answer'])) { echo "Ответ не верный!"; } } ?> <form action="" method="post"> <p><?php echo $arQuestion[$index]['QUESTION']; ?> </p> <input type="hidden" name="question" value="<?php echo $index;
if (empty($this->arQuestions[$idQuestion]['ANSWERS']) == empty($arAnswers[$idQuestion]['ANSWERS'])) { return true; } foreach ($this->arQuestions[$idQuestion]['CHECK'] as $key => $value) { if (!@in_array($value, $arAnswers[$idQuestion])) { return false; } } return true; } } $path = $_SERVER["DOCUMENT_ROOT"] . $GLOBALS["questionsPath"]; $arQuestion = create_arr_questions($path); $anyAnswer = new CAnyAnswer($arQuestion); if (!$_REQUEST['send']) { $idQuestion = $anyAnswer->ShowQuestion(); } if ($_REQUEST['send']) { $idQuestion = $_REQUEST['question']; $arAns = $arQuestion[$idQuestion]["ANSWERS"]; $n = 0; foreach ($arAns as $key => $val) { if ($_REQUEST['answer' . $key] == 'on') { $n++; $arAnswers[$idQuestion][$n] = $key; } } if ($anyAnswer->checkAnswer($idQuestion, $arAnswers)) { echo "Ответ верный!"; } else { echo "Ответ не верный!";