无法在阵列上显示我的数据库

时间:2014-03-13 17:13:05

标签: php arrays json

好的,谢谢你们所有人的回答。

我做了一些改变,但我仍然无法显示我的阵列...

看看我做了什么:

$prog = array();
$i=0;


        while($row = $get_programmation->fetch_assoc()){
        $prog[$i] = $row;
                $i++;
        }

echo json_encode($prog);

我会得到这样的结果:{" id":" 0","艺术家":" xxxx" ,. ...等等,然后在我的iOS应用程序中使用它来显示我想要的内容。

3 个答案:

答案 0 :(得分:0)

mysql_query("SELECT * FROM `programmation`");

反引号而不是单引号

此处还有$articles[] = $row;

$row变量中,您必须指定必须插入数组的MySQL表列名,例如$row['id']等...

注意:请参阅mysql_ deprecated发布

答案 1 :(得分:0)

您不能在表名或字段名中使用引号,但可以使用反引号()

$get_programmation = mysql_query("SELECT * FROM 'programmation'");

应该是:

$get_programmation = mysql_query("SELECT * FROM `programmation`");

$get_programmation = mysql_query("SELECT * FROM programmation");

答案 2 :(得分:0)

替换此$get_programmation = mysql_query("SELECT * FROM 'programmation'");

使用此$get_programmation = mysql_query("SELECT * FROM programmation");

然后重要的是在while循环中更改代码,如下所示

    while($row = mysql_fetch_assoc($get_programmation)){
        array_push($articles, $row['yourcol1'],$row['yourcol2']);
    }
echo json_encode($articles);

$ row不是实际数组。如果仅使用实际列名,则可以获取值。在这里,我将它推送到while循环中的数组,以形成数组。(这里我只提到了两列,你可以用这样的方式获取所有列。)