ユーザーが商品を注文できるサイトがあります。現在、さまざまな情報を PHP スクリプトに送信して、そこからデータベースに追加できるようにしています。
$.ajax ({
type: "POST",
url: "./pay.php",
dataType: "json",
data: {
"firstName" : firstName,
"lastName" : lastName,
"email" : email,
"price" : price
}
});
これはうまく機能しています。ここで、注文された製品の ID と数量を含む 2 つの配列を送信したいと思います。特定の時点でいくつの製品があるか、またはその ID が何であるかがわからないため、上記のように個別のアイテムとして追加することはできません。現在、私は製品IDとそれに対応する数量を別々の配列に持っています:
productIds: ["6", "1"]
quantities: ["1", "4"]
これらの配列を残りの変数と一緒に PHP スクリプトに送信して、これらの配列をループ処理し、情報をデータベースに挿入できるようにします。
こんなことしていいの?
$.ajax ({
type: "POST",
url: "./pay.php",
dataType: "json",
data: {
"firstName" : firstName,
"lastName" : lastName,
"email" : email,
"price" : price,
"productIds" : productIds,
"quantities" : quantities
}
});
現在、PHP スクリプトで次のようにアクセスできる非配列変数:
$email = $_POST['email'];
$firstName = $_POST['firstName'];
$lastName = $_POST['lastName'];
$price = $_POST['price'];
PHPスクリプトのproductIds配列を次のようにループしたいのですが、何か足りないと思います:
$i = 1;
foreach ($_POST['productIds'] as $value) {
$sql = 'INSERT INTO orders SET
product_id = "'.$_POST['productIds'][$i].'",
quantity = "'.$_POST['quantities'][$i].'"';
$result = $conn->query($sql);
$i++;
}
Ajax を使用して、他の非配列データとともに JavaScript 配列を PHP スクリプトに送信するにはどうすればよいですか?