我是编程新手,并且有一个关于使用PHP将带有Join的MYSQL查询转换为JSON对象的问题。通过phpMyAdmin运行语句时,我得到了结果。但是,当尝试将其转换为JSON对象时,我得到一个空白屏幕。任何帮助是极大的赞赏!这是我的代码:
$myquery = "SELECT track_ticseverity.date, track_ticseverity.ticnum, track_ticseverity.user_id, track_fatigue.date, track_fatigue.fatiguenum, track_fatigue.user_id
FROM track_ticseverity
INNER JOIN track_fatigue
ON track_ticseverity.date=track_fatigue.date
WHERE track_ticseverity.user_id=1
AND track_fatigue.user_id=1;"
$query = mysqli_query($conn, $myquery);
if ( ! $query ) {
echo mysqli_error();
die;
}
$data = array();
for ($x = 0; $x < mysqli_num_rows($query); $x++) {
$data[] = mysqli_fetch_assoc($query);
}
echo json_encode($data);
mysqli_close($server);
答案 0 :(得分:0)
您是否已连接到数据库? (mysqli_connect)
它不在您的代码示例中,但也许您无论如何也没有复制它。
如果你这样做了,你为哪个变量分配了连接?一旦你在mysqli_query中使用$ conn并且在mysqli_close中使用$ server。
也许这有帮助,即使我认为PHP应该在这种情况下显示错误?
另一个Tipp
您可以轻松编写以下内容:
while($datarow = mysqli_fetch_assoc($query)) {
$data[] = $datarow;
}
像这样,你可以保存for循环。
答案 1 :(得分:0)
我只是想通了。我结束了我的查询;“而不是”; 谢谢你的回复!对不起,我发布之前没有抓到它!