我之前創建了一個文本文件並將其轉換爲多維數組以顯示爲測驗的問題。如何在一次在線測驗中一次只顯示一個數據
注意:我無法插入圖像,因此我無法提供任何示例,因此我會盡可能描述一下。
我試圖一次只顯示一個問題,每次用戶點擊我的測驗。
這是我的代碼到目前爲止。該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()
只顯示一個問題?
你可以給我們一個你的$ _SESSION數組的var_dump嗎? – 2012-04-19 20:26:36
($ q,$ a,$ answer,$ data) – user1344705 2012-04-19 20:34:39
這不是我要求的.. do var_dump($ _ SESSION [「questions_array」]);在您的問題頁面上發佈結果。 – 2012-04-19 20:36:02