繁体   English   中英

将php对象编码为json

[英]encode php object into json

关于这个问题有很多,但我无法弄清楚为什么它不起作用,它现在已经停止了。 我运行一个查询并使用php返回一个对象,然后尝试将其编码为json,然后将其客户端解析为json。 它告诉我SyntaxError:JSON.parse:JSON数据后出现意外的非空白字符。

我的PHP代码:

$product = ShoppingCart::addToCart($_GET['product_id']);

echo json_encode($product);

客户端代码:

$.get(
    './models/shoppingCart.inc.php',
    {product_id: id},   
    function(data) { 
        var product = JSON.parse(data)

        $('#cart_qty').html(cartQty);

        var table=document.getElementById("table_products");
        var row=table.insertRow(1);
        var cell1=row.insertCell(0);
        var cell2=row.insertCell(1);
        var cell3=row.insertCell(2);
        cell1.innerHTML=product.product_name;
        cell2.innerHTML=product.price;
        cell3.innerHTML=qty;

    },
    'html' 
);  

};

这是返回的内容:

16{"product_id":"16","product_name":"Pavlova","price":"17.4500","supplier":{"company_name":"Pavlova, Ltd.","address":"74 Rose St.\r\nMoonie Ponds","phone":"(03) 444-2343","city":null,"contact_name":"Ian Devling","contact_title":"Marketing Manager"},"units_in_stock":"29","units_on_order":"0","reorder_level":"10","category_id":"3","qty_per_unit":"32 - 500 g boxes","discontinued":"0","supplier_id":"7"}

您在php脚本中有一些调试输出,或者在开始<?php标记之前有内容。 必须删除json前面的16 找出它的来源并将其删除。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM