For循环多项PHP

时间:2016-04-15 08:21:19

标签: php for-loop pdo multipleoutputs

我想用for循环输出问号(vraag),因此它从数据库中获取5个元素(从1到5)。 然后我想从用户输入(A / B / C / D)中得到答案

根据带有用户输入值的问题编号从数据库中获取答案值。

问题是,它只输出第一个元素,其余的输出都是空的。

包含数据库信息的图片。Database

for($i = 1; $i < 6; $i++){
            $vraag = $i;
            $answer = '$answer'.$i;
            $answerNumber = $_POST['question-'.$i.'-answers'];
            $query = $db->prepare("SELECT * FROM vraag WHERE vraagnummer = :VRAAG AND antwoord = :ANTWOORD");
            $query->bindparam(":VRAAG",$vraag);
            $query->bindparam(":ANTWOORD",$answerNumber);
            $query->execute();
            $has_author = $query->fetch();

            $VN = $has_author['vraagnummer'];
            $A = $has_author['antwoord'];
            $PA = $has_author['puntenA'];
            $PB = $has_author['puntenB'];
            $PC = $has_author['puntenC'];
            $PD = $has_author['puntenD'];
            echo $VN;
            echo $A;
            echo '<br />';
            echo '<br />';
            echo 'A'.$PA.'<br />';
            echo 'B'.$PB.'<br />';
            echo 'C'.$PC.'<br />';
            echo 'D'.$PD.'<br />';
        }

1 个答案:

答案 0 :(得分:1)

要显示数据库的整个结果,您需要使用while loop作为

while ($has_author = $query->fetch()) {
    $VN = $has_author['vraagnummer'];
    $A = $has_author['antwoord'];
    $PA = $has_author['puntenA'];
    $PB = $has_author['puntenB'];
    $PC = $has_author['puntenC'];
    $PD = $has_author['puntenD'];
    echo $VN;
    echo $A;
    echo '<br />';
    echo '<br />';
    echo 'A' . $PA . '<br />';
    echo 'B' . $PB . '<br />';
    echo 'C' . $PC . '<br />';
    echo 'D' . $PD . '<br />';
}