Ранее я создал текстовый файл и превратил его в многомерный массив для отображения в качестве вопросов для моей викторины.
Примечание. Я не могу вставлять изображения, поэтому не могу привести какой-либо пример, поэтому постараюсь быть как можно более описательным.
Я пытаюсь отображать только один вопрос за раз, каждый раз, когда пользователь нажимает на мою викторину.
Это мой код до сих пор. Страница main.php:
<h2>ONLINE QUIZ</h2>
<ul>
<li><a href='question.php'>Take quiz</a></li>
<li><a href='module.php'>Admin Module</a></li>
</ul>
<?php
$file = fopen('data.txt', 'r');
$array = array();
while ($line = fgetcsv($file)) {
$array[] = $line;
}
fclose($file);
session_start();
$_SESSION["questions_array"]=$array;
?>
И страница question.php:
<?php
session_start();
$array=$_SESSION["questions_array"];
foreach ($array as $q => $data) {
echo '<p>'.array_shift($data).'</p>';
foreach ($data as $a => $answer) {
echo
' <input type="radio" name="question-'.$q.'" id="question-'.$q.'"'.
' value="'.$a.'"/>'.
' <label for="question-'.$q.'">'.$answer.'</label>'.
'<br>';
}
}
?>
При нажатии на ссылку Take quiz
пользователь попадает на страницу вопроса, где отображается только один вопрос. Затем пользователь выбирает ответ и нажимает submit
. Эта кнопка отправки перенаправит пользователя на страницу результатов, где он сможет нажать continue
.
Ссылка Continue
перенаправит их обратно на страницу вопроса, где отображается следующий вопрос.
Из того, что я делал раньше, я пытаюсь использовать функцию isset()
, чтобы это произошло. Однако проблема в том, что я не уверен, как именно написать свой isset()
.
Я нашел этот фрагмент с этого сайта, я не уверен, что он полезен, но:
if (!isset($_SESSION['FirstVisit'])) {
//show site for the first time part
$_SESSION['FirstVisit] = 1;
header("Location: http://example.com/index.php");
// Don't forget to add http colon slash slash www dot before!
} else { Show normal site }
Но я снова оказался пустым. Как именно использовать isset()
для отображения только одного вопроса?