최근 요구 사항이 있습니다. 프론트 엔드는 json을 백그라운드에 제출하고, 백그라운드는 제출된 값을 구문 분석하여 데이터베이스에 삽입합니다.
난이도
1. PHP는 json을 구문 분석합니다(어렵지 않습니다. 온라인에 많은 예제가 있습니다)
2. json을 파싱한 후, PHP는 얻어야 할 값을 어떻게 얻나요
<?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(); ?>
기고자 정보
별명 : 홀라
이메일: jamcistos@outlook.com