最近有一个需求,前端向后台提交json,后台解析并且将提交的值插入数据库中,
难点
1、php解析json(这个不算难点了,网上实例一抓一大把)
2、解析json后,php怎样拿到该拿的值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
<?php require ( 'connect.php' ); /* 本例用到的数据: post_array={"order_id":"0022015112305010013","buyer_id":"2","seller_id":"1","all_price":"100.00","json_list":[{"product_id":"3","product_number":"3"},{"product_id":"8","product_number":"2"},{"product_id":"10","product_number":"4"}]} */ $post_array = $_POST [ 'post_array' ]; //--解析Json,获取对应的变量值 $obj =json_decode( $post_array ,TRUE); $order_id = $obj [ 'order_id' ]; $buyer_id = $obj [ 'buyer_id' ]; $seller_id = $obj [ 'seller_id' ]; $all_price = $obj [ 'all_price' ]; $i =0; //循环变量 //--得到Json_list数组长度 $num = count ( $obj [ "json_list" ]); //--遍历数组,将对应信息添加入数据库 for ( $i ; $i < $num ; $i ++) { $list_product_id []= $obj [ "json_list" ][ $i ][ "product_id" ]; $list_product_number []= $obj [ "json_list" ][ $i ][ "product_number" ]; $insert_order_product_sql = "INSERT INTO tbl_order_product (order_id,product_id,product_number) VALUES (?,?,?)" ; $result = $sqlconn -> prepare( $insert_order_product_sql ); $result -> bind_param( "sss" , $order_id , $list_product_id [ $i ], $list_product_number [ $i ]); $result ->execute(); } //--添加订单信息 $insert_order_sql = "INSERT INTO tbl_order (order_id,buyer_id,seller_id,all_price) VALUES (?,?,?,?)" ; $result = $sqlconn ->prepare( $insert_order_sql ); $result ->bind_param( "ssss" , $order_id , $buyer_id , $seller_id , $all_price ); $result ->execute(); $result -> close(); $sqlconn -> close(); ?> |
投稿者信息
昵称: Hola
Email: jamcistos@outlook.com