繁体   English   中英

如何从表中的不同行获得多个结果?

[英]How do I get multiple results from different rows in a table?

我试图从我的表“问题”中获取所有结果行,其中测验ID($ currentQuizID)相同。 我的代码只允许我从表中获取一行数据,那么该怎么办?

$findQuiz = "SELECT QuizID FROM quiz ORDER BY QuizID DESC"; 
$result = mysqli_query($user->db,$findQuiz);
$iddata = mysqli_fetch_array($result);
$currentQuizID = $iddata['QuizID'];

$findQuestions = "SELECT Type, Question, Answer FROM question WHERE QuizID = '".$currentQuizID."'"; 
$result2 = mysqli_query($user->db,$findQuestions);
$iddata2 = mysqli_fetch_array($result2);
echo $iddata2[0];
echo $iddata2[1];
echo $iddata2[2];

获取测验ID的Use while循环后,可从问题的表中获取多个记录

$findQuiz = "SELECT QuizID FROM quiz ORDER BY QuizID DESC"; 
$result = mysqli_query($user->db,$findQuiz)
$totalArray = array();

while($iddata = mysqli_fetch_array($result);) 
{
        $currentQuizID = $iddata['QuizID'];
        $findQuestions = "SELECT Type, Question, Answer FROM question WHERE QuizID = '".$currentQuizID."'"; 
        $result2 = mysqli_query($user->db,$findQuestions);
        $iddata2 = mysqli_fetch_array($result2);
        $res['Type'] = $iddata2[0];
        $res['Question'] = $iddata2[1];
        $res['Answer'] = $iddata2[2];
        array_push($totalArray,$res);
 }

 print_r($totalArray);

添加:

while($row = mysqli_fetch_array($result2)) {
   echo $row["Type"]." ".$row["Question"]." ".$row["Answer "]."\n"; 
} 
$findQuestions = "SELECT Type, Question, Answer FROM question WHERE QuizID = '".$currentQuizID."'"; 
$result2 = mysqli_query($user->db,$findQuestions);
$iddata_questions = array();
while($row = mysqli_fetch_array($result2)) {
    $iddata_questions[] = array($row["Type"],
                                $row["Question"],
                                $row["Answer"]);
}

echo "<pre>";
    var_dump($iddata_questions);
echo "</pre>;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM