クイズを書いています。最初に質問がquestion.phpに表示され、次にanswer.phpで回答が分析されます。回答が正しい場合は単語が配列に格納され、間違っている場合は別の配列に格納されます。次に、question.phpなどに戻ります。これ以上質問がない場合、result.phpは、どの単語が正しいか、どの単語が間違っているかを示します。
answer.phpがロードされるたびに、セッション配列に新しい単語を含める必要があることに注意してください。
編集:問題は、セッション配列が最初のアイテムのみを格納していることです
私のコード:
answer.php:
<?php
session_start();
$question = $_GET['question'];
$user_answer = $_GET['user_answer'];
$right_answer = mysql_query("SELECT french FROM words where english='$question'");
$fila = mysql_fetch_assoc($right_answer);
$fila_french = $fila['french'];
if ( $user_answer == $fila_french ) {
echo "Right";
$_SESSION['right_words'] = array();
array_push($_SESSION['right_words'], $question);
}
else { echo "Wrong";
$_SESSION['wrong_words'] = array();
array_push($_SESSION['wrong_words'], $question);
}
echo "<a href='question.php' > Next </a>";
?>
result.php:
<?php
session_start();
$right_answers = implode(',',$_SESSION['right_words']);
$wrong_answers = implode(',',$_SESSION['wrong_words']);
echo "<h1> You finished the test </h1>
<p> You have these words right: $right_answers</p>
<p> You have these words wrong: $wrong_answers</p>
<a href='../exercises.php'> Go back to exercises </a>";
?>
助けてくれてありがとう!