我正在尝试将一个简单的购物车系统添加到我的照片库中,目前我正在创建一种简单的方法来更新所选产品的类型和数量。但是,我在处理 PHP 端的数据时遇到了问题。
因为我正在发送具有相同字段名称的行,所以 PHP 正在覆盖数据以仅创建 1 个数组。理想情况下,我希望它在 PHP 中变成这样;
array(item, product, quantity),
array(item, product, quantity),
array(item, product, quantity)
处理此问题的最佳方法是什么。
- 使用某种唯一标识符创建字段名称,然后让 PHP 重新处理 post 数组。
- 用 JS 创建数组,然后将它们作为数组作为一行发送,所以在我的例子中是 3 个数组。不确定它是否会起作用,因为它会在 POST 期间转换回字符串?
- 以“item_gallery_id”字段为键创建帖子数组的某种方式?
- 我已经坚持了几个小时,对于我认为很简单的事情,我已经尝试了一切:(
开机自检参数
cart_id 1
item_gallery_id 6
item_gallery_id 3
item_gallery_id4
product_options 12
product_options 12
product_options 12
quantity 1
quantity 1
quantity 1
我有以下 HTML
<form id="order_photo_form">
<table width="100%" border="0">
<thead>
<tr>
<th>Item</th>
<th>Album/Item</th>
<th>Product/Price</th>
<th>Quantity</th>
</tr>
</thead>
<tbody>
<tr>
<input class="form_data" name="item_gallery_id" value="6" type="hidden">
<td><img src="img" width="100"></td>
<td>Item</td>
<td><select class="form_data" name="product_options">
<option value="12">Canvas 100x150cm - $550</option>
<option value="11">Canvas 100x100cm - $350</option>
</select></td>
<td><select class="form_data" name="quantity">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select></td>
</tr>
<tr>
<input class="form_data" name="item_gallery_id" value="3" type="hidden">
<td><img src="img" width="100"></td>
<td>Item</td>
<td><select class="form_data" name="product_options">
<option value="12">Canvas 100x150cm - $550</option>
<option value="11">Canvas 100x100cm - $350</option>
</select></td>
<td><select class="form_data" name="quantity">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select></td>
</tr>
<tr>
<input class="form_data" name="item_gallery_id" value="4" type="hidden">
<td><img src="img" width="100"></td>
<td>Item</td>
<td><select class="form_data" name="product_options">
<option value="12">Canvas 100x150cm - $550</option>
<option value="11">Canvas 100x100cm - $350</option>
</select></td>
<td><select class="form_data" name="quantity">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select></td>
</tr>
</tbody>
</table>
</form>
然后是一些简单的jQuery;
$.ajax({
url: "ajax.php?update_cart",
type: "POST",
data: $('#order_photo_form').serialize(),
success: function(data){
$.jGrowl(data, { life: 10000 });
},
});
谢谢。