【发布时间】:2014-01-05 21:12:24
【问题描述】:
我有一个带有多项选择题和一个提交按钮的 HTML 页面。提交按钮导致一个 .php 页面,其中包含以下代码:1) 连接到 phpmyadmin、sql 数据库和相关表,以及 2) 下面的代码告诉/提醒用户它是什么问题编号,实际问题,正确答案(来自数据库)和他们提交的答案。
我的问题是我想要计算一个分数并将其传达给用户,但它不太有效。一条错误消息告诉我以下行不起作用
$answered = $row['select'.$_GET['a'.$x]] ;
我从另一个问答论坛获取了这个,我不太确定它完全说明了什么,但它似乎导致了错误
数据库简单;仅限 Questionid、Questiontext 和 Correctanswer 列。
浏览器显示如下:
Question Number: 1
Question: ________ hablo
Correct Answer: Yo
Your Answer: Yo
注意:未定义索引:C:\xampp\htdocs\SSF\1B results.php 中的 a2 第 33 行
注意:未定义索引:在 C:\xampp\htdocs\SSF\1B results.php 中选择 第 33 行 您正确回答了 1 个问题中的 0 个问题!
代码
$result = mysql_query("SELECT * FROM 1b")
or die ('Connection to table failed');
$x = 0;
$score = 0;
while ($row = mysql_fetch_assoc($result)){
echo "Question Number: " . $row['Questionid'] . '<br />';
echo "Question: " . $row['Questiontext'] . '<br />';
echo "Correct Answer: " . $row['Correctanswer'] . '<br />';
foreach ($_GET['select'] as $value)
echo "Your Answer: " . $value."\n" . '<br />';
$answered = $row['select'.$_GET['a'.$x]] ;
$correct = $row['Correctanswer'] ;
if ($answered == $correct ) {
$score++;
$acolor = 'green' ;
}
else {
$acolor = 'red' ;
}
$x = $x + 1;
}
echo 'You answered ' . $score . ' out of ' . $x . ' questions correctly!';
?>
【问题讨论】:
标签: php mysql multiple-choice