Hallo zusammen,
ich versuche, aus den Datensätzen einer MySQL-Datenbank ein valides, multidimensionales JSON-Array zu erzeugen (hoffentlich habe ich das richtig formuliert).
Das ist mein Code:
PHP
$statement = $pdo->prepare("SELECT * FROM questionsanswers");
$statement->execute(array());
$answers = [];
echo '[';
while ($row = $statement->fetch()) {
$answers = [
'question' => $row['question'],
'answers' => [],
];
$answers['answers'][] = $row['answer1'];
$answers['answers'][] = $row['answer2'];
$answers['answers'][] = $row['answer3'];
$answers['answers'][] = $row['answer4'];
echo json_encode($answers, JSON_UNESCAPED_UNICODE);
echo ',';
}
echo ']';
Alles anzeigen
Und das ist das Ergebnis: http://music-quiz.bplaced.net/test05/json.php
Obwohl mir mein PHP-Code sehr fragwürdig vorkommt, ist das Ergebnis fast korrekt. Fast … denn das Komma hinter dem letzten Datensatz macht den JSON-Code invalide.
Wie mache ich es richtig? Wie muss der PHP-Code aussehen, um ein valides JSON-Array zu erzeugen?
Vielen Dank und Gruß
Felix