我很确定我将几个任务混合在一起,但请耐心等待,我是 mySQL 和 php 的新手。
我正在使用json_encode
从 mySQL 查询创建 JSON。但在回显之前,我想修改 JSON,以添加更多有价值的数据。目前我的 JSON 看起来像这样:
[
{
"question": "1",
"questionText": "question text 1",
"categoryID": "1",
"answerID": "1",
"answerText": "answer text 1",
"isTrue": "1"
},
{
"question": "1",
"questionText": "question text 1",
"categoryID": "1",
"answerID": "2",
"answerText": "answer text 2",
"isTrue": "0"
},
{
"question": "1",
"questionText": "question text 1",
"categoryID": "1",
"answerID": "3",
"answerText": "answer text 3",
"isTrue": "0"
},
{
"question": "1",
"questionText": "question text 1",
"categoryID": "1",
"answerID": "4",
"answerText": "answer text 4",
"isTrue": "0"
},
{
"question": "2",
"questionText": "question text 2",
"categoryID": "2",
"answerID": "1",
"answerText": "answer text 1",
"isTrue": "0"
},
{
"question": "2",
"questionText": "question text 2",
"categoryID": "2",
"answerID": "2",
"answerText": "answer text 2",
"isTrue": "1"
},
{
"question": "2",
"questionText": "question text 2",
"categoryID": "2",
"answerID": "3",
"answerText": "answer text 3",
"isTrue": "0"
},
{
"question": "2",
"questionText": "question text 2",
"categoryID": "2",
"answerID": "4",
"answerText": "answer text 4",
"isTrue": "0"
}
]
我希望它看起来像这样(伪代码):
exam:{
questions:[
question:{
questionID: string
questionTest: string
categoryID: string
correctAnswerID: string
chosenAnswerID: string
answers:[
answer:{
answerID = string
answerText = string
isTrue = bool
}
answer:{}
]
}
question:{}
]
categoryID: string
}
这是到目前为止的代码:
<html>
<body>
<?php
header('Content-Type: text/html; charset=utf-8');
$con=mysqli_connect("localhost","root","root","Theory");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT `questions`.`questionID` AS questionID,
`questions`.`questionText` AS questionText,
`questions`.`categoryID` AS categoryID,
`answers`.`answerID` AS answerID,
`answers`.`answerText` AS answerText,
`answers`.`isTrue` AS isTrue
FROM `questions`,`answers`
WHERE `questions`.`questionID` = `answers`.`questionID`");
if (!$result)
{
die('Error: ' . mysqli_error($con));
}
$rows = array();
while($r = mysqli_fetch_assoc($result)) {
$rows[] = $r;
}
print json_encode($rows);
mysqli_close($con);
?>
</body>
</head>