【问题标题】:Trying to load questions and answers from MySQL shows nothing尝试从 MySQL 加载问题和答案没有显示
【发布时间】:2013-01-04 15:47:47
【问题描述】:

在我的测验系统中,我实际上正在尝试制作问题页面,但是当我尝试在页面上显示问题行和答案行时,它什么也没显示。

<?php
    $q_qselect = mysql_query("SELECT * FROM `questions`");
    $q_qnumrows = mysql_num_rows($q_select);
    for($i=0;$i<$q_qnumrows;$i++){

        $q_qselect = mysql_query("SELECT * FROM `questions` WHERE `id`='$i'");
        $q_aselect = mysql_query("SELECT * FROM `answers` WHERE `question_id`='$i'");

        $q = mysql_fetch_assoc($q_qselect);
        $a = mysql_fetch_assoc($q_aselect);

        echo $q['question'] . "<br />";
        echo $a['answer'] . "<br />";
    }
?>

还有另一个问题——我如何才能真正检查他是否选择了正确的答案? (每个答案附近的单选按钮)当答案表中的字段为correct时?

【问题讨论】:

标签: html mysql arrays for-loop mysql-num-rows


【解决方案1】:
<?php
$question = mysql_query("SELECT questions.*, answers.* FROM questions inner join answers on questions.qid=answers.id");

   while($row = mysql_fetch_array($question)) {
   echo $row['question_column_name_in_DB'].'<br />' .$row['answer_column_name_in_DB'].'<br />';
}

?>

将列名更改为适当的名称。完成此操作后,请查看 PDO。

【讨论】:

  • 你是怎么调用这个 php 文件的?从另一个php文件?如果是这样,您是否记得包含此文件?
  • exam.php,我没有从其他文件中包含它。
  • 帮我一个忙。注释掉您的代码,然后尝试回显一个字符串,如果它为您回显,请告诉我。如果是这样,则可能意味着您的查询有问题。
  • $question = mysql_query("SELECT questions.*, answers.* FROM questions inner join answers on questions.qid=answers.id"); while($row = mysql_fetch_assoc($question)) { echo $row['question'].'
    ' .$row['answer'].'
    ';我已经设法回显一个字符串。
  • qid 和 answers.id 是我自己编的 id,因为我不知道你的表结构。您的答案表中应该有一个与问题表中的问题相关联的 ID。这就是您想要在您的桌子上连接在一起的 id。无论每个表中的列名是什么,都是你放在那里的。
【解决方案2】:

您可以尝试使用 As Like Follow....

<?php

  $query_result = mysql_query("SELECT questions.*, answers.* FROM questions LEFT JOIN answers on questions.id=answers.`question_id`");

  while($row = mysql_fetch_array($query_result)) {
    echo $row ['question'] . "<br />";
    echo $row ['answer'] . "<br />";
  }

?>

【讨论】:

    猜你喜欢
    • 2019-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-26
    相关资源
    最近更新 更多