MySQL到JSON编码错误/没有结果

时间:2015-07-16 15:41:50

标签: php mysql json encode

我知道这类问题已被问过几次,但我的问题有点不同,我无法解决这个问题。我已经检查了其他类似的问题,但无法找到解决方案,因为一切似乎都是正确的。

我有一个名为 KalkanliMekanlar 的数据库表,里面有3个表。现在,我想编码 Mekanlar 表的内容。它内部有5列22行。

当我运行以下PHP代码时,我看不到任何结果。如果你能帮助我,我将不胜感激。

我不知道它是否有帮助,但我的服务器是在digitalocean上。

非常感谢你的帮助!

PHP代码:

$sql = "SELECT * FROM Mekanlar";

$result = mysqli_query($connection, $sql) or die("Error in Selecting " . mysqli_error($connection));

$emparray[] = array();

while($row =mysqli_fetch_assoc($result))
{
    $emparray[] = $row;
}

echo json_encode($emparray);

mysqli_close($connection);

非常感谢你的帮助!

2 个答案:

答案 0 :(得分:2)

替换它:

$emparray[] = array();

与此:

$emparray = array();

答案 1 :(得分:1)

在做了@ RhinoDevel的建议之后,也做了这个

while($row =mysqli_fetch_assoc($result))
{
     array_push($emparray,$row);
}

编辑:以下来自Rhino的评论,

    $array[] = array ();
    for ($i = 0 ; $i < 5 ; $i++) {
        $array[] = $i;
    }
    $logger->info("OP : " . json_encode($array));
    $array = array ();
    for ($i = 0 ; $i < 5 ; $i++) {
        $array[] = $i;
    }
    $logger->info("RD : " . json_encode($array));

    $array = array ();
    for ($i = 0 ; $i < 5 ; $i++) {
        array_push($array , $i);
    }
    $logger->info("YL : " . json_encode($array));

产量:

2015-07-17T06:59:42-04:00 TestPatient.api           INFO  OP : [[],0,1,2,3,4]
2015-07-17T06:59:42-04:00 TestPatient.api           INFO  RD : [0,1,2,3,4]
2015-07-17T06:59:42-04:00 TestPatient.api           INFO  YL : [0,1,2,3,4]