将 JSONobject 数据数组添加到 mysql

Add Array of JSONobject data to mysql

我必须通过 Volley 从 Android 应用程序发送一个 JSON 对象数组,并且必须在后端 PHP 处理它,以便将它们插入到相关 table。 在服务器端,数组被成功接收(我在应用程序代码中将数组转换为字符串,然后将其作为字符串发送)。 但是我无法在我的代码中找到错误。万一我的方法有误,请指点proper/efficient方法,不胜感激。

This is the string being received in the server side : 

[
  {
    "product": 1451,
    "qty": 1
  },
  {
    "product": 2704,
    "qty": 1
  },
  {
    "product": 2705,
    "qty": 1
  }
]

code is

  case "sales_items": //print_r($_POST);
                            $invoice = $_POST['invoice']; 
                            $sales_items = $_POST['sales_items'];

                        foreach($sales_items as $item){
                            mysqli_query($conn,"INSERT INTO app_sales_items(invoice,product,qty) 
                            VALUES('$invoice','".$item["product"]."','".$item["qty"]."')")or die(mysqli_error($conn));
                        }

                        if(mysqli_affected_rows($conn)>0) {  
                                $response['status'] = true;
                            }
                            else $response['status'] = false;

                        echo json

_encode($response);         
                    break;

您需要执行 json_decode 以获取数组形式的数据

$sales_items = '[{"product":1451,"qty":1},{"product":2704,"qty":1},
       {"product":2705,"qty":1}]';
     $data = json_decode($sales_items, true);
     foreach($data as $item) {

       //ur code here
      }

使用预处理语句保存数据

演示 link http://sandbox.onlinephpfunctions.com/code/55773f703a27d76fbead654af6554c8c6fabb401