Json编码对某些列没有任何返回

时间:2016-04-26 04:07:01

标签: php mysql json

我的桌子上有1700行。问题是如果我尝试使用 des 列,我无法获得json输出,浏览器中没有显示输出。如果我尝试获取除des之外的其他列,则显示输出。然后我尝试了限制关键字,我限制在1240,然后给了我一个输出,甚至与des列。但我需要des列的所有记录。我把我的php脚本放在XAMPP服务器上。

这是我的php。

<?php

 require_once 'include/Configg_t.php';
 //header('Content-Type: application/json');

    $con = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) or die("connection failed");
    mysql_select_db(DB_DATABASE,$con) or die("db selection failed");


    $r=mysql_query("SELECT * from tbl_mas_material LIMIT 1240");

    $result = array();

        while($row=mysql_fetch_array($r)){
        array_push($result,
        array('des'=>$row[1]));}

        echo json_encode(array("feed" => $result));
       json_last_error();
    mysql_close($con); 



?>

表中的des列出现问题。

这是我的表结构

CREATE TABLE `tbl_mas_material` (
  `material` varchar(18) NOT NULL,
  `des` varchar(45) DEFAULT NULL,
  `code` varchar(45) NOT NULL,
  `matgrp` varchar(9) DEFAULT NULL,
  `type` varchar(4) DEFAULT NULL,
  PRIMARY KEY (`material`,`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

如果我在查询中添加 des ,则不会显示任何输出。

1 个答案:

答案 0 :(得分:0)

 array_push($result, array('des'=>$row[1]));}

请你检查一下,des值是指$ row [1]?

尝试将其更改为

 array_push($result, array('des' => $row['des']));