将单选按钮的值传递给数组

时间:2016-11-28 17:19:21

标签: php arrays button radio

我希望从我的测验中获取所选单选按钮的值到数组中。目前我遇到了这方面的问题,即使我在测验页面上回应了所选的值,并且它正确地识别出选择了哪一个。但是,当用户进入结果页面时,数组将不会存储用户之前选择的任何值。

LoadQuiz.php代码

<?php 

session_start();

$con=mysqli_connect("localhost:3307","root","usbw","degreeproject");

$quizid = $_GET['quizid'];
$sql = "SELECT * FROM questions WHERE QuizID = '$quizid'";
$result = mysqli_query($con,$sql);

$_SESSION['quiz'] = Array();
$_SESSION['quiz']['Question'] = Array();
$_SESSION['quiz']['CorrectAnswer'] = Array();
$_SESSION['quiz']['IncorrectAnswer1'] = Array();
$_SESSION['quiz']['IncorrectAnswer2'] = Array();
$_SESSION['quiz']['IncorrectAnswer3'] = Array();
$_SESSION['quiz']['SelectedAnswers'] = Array(); 
$_SESSION['quizlength'] = $result->num_rows;

while($row = $result->fetch_assoc())
{
$_SESSION['quiz']['Question'][] = $row['Question'];
$_SESSION['quiz']['CorrectAnswer'][] = $row['CorrectAnswer'];
$_SESSION['quiz']['IncorrectAnswer1'][] = $row['IncorrectAnswer1'];
$_SESSION['quiz']['IncorrectAnswer2'][] = $row['IncorrectAnswer2'];
$_SESSION['quiz']['IncorrectAnswer3'][] = $row['IncorrectAnswer3'];
}

if($_SESSION['quizlength'] > 0)
{
header("location: quiz.php?page=1");
}
else
{
echo("Error loading quiz");
}

?>

Quiz.php代码

<?php 

session_start();

$con=mysqli_connect("localhost:3307","root","usbw","degreeproject");

$pageid = $_GET['page'];
$nextpage = $pageid + 1;



if(isset($_GET['submit']))
{   
if($_GET['Answer'] == $_GET['CorrectAnswer'])
{
    $_SESSION['quiz']['SelectedAnswers'][$pageid-2] = 1;
}
else
{
    $_SESSION['quiz']['SelectedAnswers'][$pageid-2] = 0;

}
}
$Question = $_SESSION['quiz']['Question'][$pageid-1];
$CAnswer = $_SESSION['quiz']['CorrectAnswer'][$pageid-1];
$IAnswer1 = $_SESSION['quiz']['IncorrectAnswer1'][$pageid-1];
$IAnswer2 = $_SESSION['quiz']['IncorrectAnswer2'][$pageid-1];
$IAnswer3 = $_SESSION['quiz']['IncorrectAnswer3'][$pageid-1];




if($pageid < $_SESSION['quizlength'])
{


echo("<form action='quiz.php?page=".$nextpage."'>");



}
else
{

    echo("<form action='quizresults.php'>");
}


if(isset($_GET['submit']))
{

$SAnswer = $_GET['Answer'];  // Storing Selected Value In Variable
echo "You have selected :" .$SAnswer; 

}

echo("<br>$Question,
<form> 
<br>$CAnswer
<input type='radio' name='Answer' value= '$CAnswer' > 
<br>$IAnswer1
<input type='radio' name='Answer' value= '$IAnswer1' > 
<br>$IAnswer2
<input type='radio' name='Answer' value= '$IAnswer2' > 
<br>$IAnswer3
<input type='radio' name='Answer' value= '$IAnswer3' >
<br>$pageid
<input type='hidden' name='page' value='$nextpage' >");
echo("<input type='submit' value='Select Answer' name='submit'>");
echo("</form>");





?>

QuizResults.php代码

<?php 

session_start();

$con=mysqli_connect("localhost:3307","root","usbw","degreeproject");

if (isset($_SESSION["username"]))
{
echo("U " . $_SESSION["username"]);
$user = $_SESSION['username'];
}

else
{
header("location:login.php");
}




$Question = $_SESSION['quiz']['Question'];
$CAnswer = $_SESSION['quiz']['CorrectAnswer'];
$IAnswer1 = $_SESSION['quiz']['IncorrectAnswer1'];
$IAnswer2 = $_SESSION['quiz']['IncorrectAnswer2'];
$IAnswer3 = $_SESSION['quiz']['IncorrectAnswer3'];
$SAnswers = $_SESSION['quiz']['SelectedAnswers'];
print_r($_SESSION['quiz']);

$QuizTaken = TRUE;

if($QuizTaken==TRUE)
{
echo("<br>The Question Asked Was: ");
echo($Question = $_SESSION['quiz']['Question'][0]);
echo("<br>The Correct Answer Was: ");
echo($CAnswer = $_SESSION['quiz']['CorrectAnswer'][0]);
echo("<br>The Answer You Gave Was: ");
echo($SAnswers  = $_SESSION['quiz']['SelectedAnswers'][0]);


}

else

{

echo("NO QUIZ HAS BEEN TAKEN");

}






?>

任何帮助将不胜感激。 感谢。

0 个答案:

没有答案
相关问题