私はPHPを初めて使用しています。私はpost
にjson文字列を送ります。そのjson文字列は製品の配列リストです。私はアンドロイドからphp webserviceに送るでしょう。デコード後に配列をvar_dumpするとnullが表示されます。ここでPHP:データベースにjsonの文字列を挿入できません。
は私のコード
<?php
$servername = "mysql.hostinger.in";
$username = "username";
$password = "password";
$dbname = "db_name";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$orderDetails = mysqli_real_escape_string($conn, $_POST['orderDetails']);
$name = mysqli_real_escape_string($conn, $_POST['name']);
$refNo = mysqli_real_escape_string($conn, $_POST['refNo']);
$date = mysqli_real_escape_string($conn, $_POST['date']);
$amount = mysqli_real_escape_string($conn, $_POST['amount']);
$objs = json_decode($orderDetails, true);
//var_dump($objs);
$sql = "INSERT INTO tblOrder (name, refNo, date, quality, design, qty, pcs, amount) values ('$name', '$refNo', '$date', 'mix quality', 'mix design', '1250', '2', '$amount')";
mysqli_query($conn, $sql);
$orderId = mysqli_insert_id($conn);
if(is_array($objs) || is_object($objs)){
foreach($objs as $item) {
$sql2 = "INSERT INTO tblOrderDetails (orderId, quality, design, shade, quantity, rate)
VALUES ('$orderId', '".$item['qualityName']."', '".$item['designName']."', '".$item['name']."','".$item['pcs']."', '".$item['amount']."')";
mysqli_query($conn, $sql2);
}
}
mysqli_close($conn);
?>
されており、ここで私はポストにorderDetails
として渡しています私のJSON文字列です。
[
{
"amount": "1000",
"qualityName": "Cotton",
"designName": "11001",
"discPercent": "5",
"image": "http://website.com/Demo/images/1.jpg",
"name": "Black",
"position": 0,
"pcs": 3,
"id": 1
},
{
"amount": "900",
"qualityName": "Cotton",
"designName": "11001",
"discPercent": "9",
"image": "http://website.com/Demo/images/2.jpg",
"name": "Green",
"position": 0,
"pcs": 2,
"id": 2
}
]
android私はVolley Libraryを使用してデータを投稿しています。
私に何かお勧めします。
JSONデータをPOSTデータとしてどのように送信していますか?例えば標準フォームの提出、AJAXリクエストなど?これらの詳細を含めるには、投稿を[編集](http://stackoverflow.com/posts/43984520/edit)してください。 –
「Volley Library」 –