Я хочу вывести номер вопроса (vraag) с циклом for, чтобы он получал 5 элементов из базы данных (от 1 до 5).
Тогда я хочу получить ответ от пользовательского ввода (A / B / C / D)
Получите значения ответов из базы данных на основе номера вопроса с введенным пользователем значением.
Проблема в том, что он выводит только первый элемент, а остальная часть вывода пуста.
Включено изображение базы данных.База данных
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 />';
}
Для отображения всего результата базы данных вам нужно использовать 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 />';
}
Других решений пока нет …