使用PHP将MySQL查询转换为JSON对象

时间:2015-10-25 17:41:29

标签: php mysql json join

我是编程新手,并且有一个关于使用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);

2 个答案:

答案 0 :(得分:0)

您是否已连接到数据库? (mysqli_connect)

它不在您的代码示例中,但也许您无论如何也没有复制它。

如果你这样做了,你为哪个变量分配了连接?一旦你在mysqli_query中使用$ conn并且在mysqli_close中使用$ server。

也许这有帮助,即使我认为PHP应该在这种情况下显示错误?

另一个Tipp

您可以轻松编写以下内容:

while($datarow = mysqli_fetch_assoc($query))  {
    $data[] = $datarow;
}

像这样,你可以保存for循环。

答案 1 :(得分:0)

我只是想通了。我结束了我的查询;“而不是”; 谢谢你的回复!对不起,我发布之前没有抓到它!