Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP从mySql结果到Json_Php_Mysql_Json - Fatal编程技术网

使用PHP从mySql结果到Json

使用PHP从mySql结果到Json,php,mysql,json,Php,Mysql,Json,我在运行php脚本时遇到一些问题, 它从mysql加载数据,然后编码为json(应该很简单): 以下是脚本: <?php require_once('../includes/dbConnect.php'); ?> <?php require_once('../includes/dbFunctions.php'); ?> <?php $db = new DB_Functions(); $output = array(); $result = m

我在运行php脚本时遇到一些问题, 它从mysql加载数据,然后编码为json(应该很简单): 以下是脚本:

<?php require_once('../includes/dbConnect.php'); ?>
<?php require_once('../includes/dbFunctions.php'); ?>
<?php
    $db = new DB_Functions();
    $output = array();
    $result = mysql_query("SELECT Name FROM Users");
        if ($result) {
            while($row = mysql_fetch_assoc($result)) {
                $output[]=$row;
            }
            print(json_encode($output));
        } else {
                $output_no = array('response'=>'no');
                print(json_encode($output_no));
        }
?>

回报是: 响应不包含任何数据。在高级Rest应用工具中

我已经签出了它提供的60行$output,但是将其编码为json它不起作用。 我的php代码怎么了?

试着用这个

  • 检查来自数据库的内容(作为数组)。为此,您可以使用
    var\u dump($row)

  • 要将值推入数组,请尝试以下操作,
    array\u push($output,$row)

  • 我使用了类似这样的东西,您可能会在将来发现它很有用:

    $result = new stdClass();
    $result->name = $something;
    $result->value = $bla_bla;
    
    json_encode($result);
    
  • 编辑

    例如,DB在$row['name']中给出了go的名称John、Mary、Smith,其中
    name
    是存储在表中的名称的字段

    我建议您创建一个函数来创建JSON,这样可以节省大量重写相同代码的时间

     function MakeJSON($output){
        $result = new stdClass();
        $result->names = $output;
        return json_encode($result);
     }
    

    停止使用mysql

    可能脚本出错。检查你的PHP错误日志。你不应该再使用
    mysql\u query
    。var\u dump($row)给出了wat??点1和2已经过测试,没有成功。数组不是空的,正如我所说,结果不在那里,我正在测试点3我应该如何在代码中实现点3?