時間がかかりましたが、ショッピングカートが機能しました。問題は、私のビジネスの性質上、顧客はカートに何百ものものを持っている可能性があり、個々のアイテムを更新する方法はかなり原始的であり、更新が必要なアイテムがたくさんある場合は面倒になる可能性があります.
顧客のカートのショッピング カート データベースの行ごとに、アイテムのフォームと製品情報を生成します。したがって、各行には独自の [アイテムの更新] ボタンがあります。
$top_query = "SELECT t1.product_id, image_path, suggested_quantity, sales_info sku_item_number FROM product_customer_suggested_qty AS t1
LEFT JOIN product_images AS t2 ON t1.product_id = t2.product_id
RIGHT JOIN products AS t3 ON t1.product_id = t3.product_id
WHERE customer_id = '".$customer_id."'
AND cart_visible != 0";
//echo $top_query;
$histresult = mysql_query($top_query) or die (mysql_error());
<tr>
<td width="181"><strong>Product</strong></td>
<td width="181"><strong>Sales Info</strong></td>
<td width="100"><strong>Suggested Qty</strong></td>
<td width="100"><strong>Qty</strong></td>
<td width="100"><strong>Image</strong></td>
<td width="100"><strong>Add to Cart?</strong></td>
</tr>
<?php
$i =0;
while($row=mysql_fetch_array($histresult))
{
echo '<tr height = "50px">';
//We grab the product id as well as everything else we need.
$customer_id= $row['customer_id'];
$product_id= $row['product_id'];
$link = $row['image_path'];
$sku_item_number = $row['sku_item_number'];
$suggested_quantity = $row['suggested_quantity'];
echo '
<form action="ezcopy.php? method="post"><td>'.$sku_item_number.'</td>';
echo '<td>'.$suggested_quantity.'
<input class="same" id="same'.$i.'" title="'.$i.'" name="same'.$i.'" type="checkbox" value ="'.$suggested_quantity.'"/>
<input name="customer_id" type="hidden" value="'.$customer_id.'">
<input name="product_id" type="hidden" value="'.$product_id.'">
<input name="i" type="hidden" value="'.$i.'">
</td>';
echo '<td><input class="qty" name="qty'.$i.'" id="qty'.$i.'" type="text"size="4" maxlength="4"></td>';
これは行全体の一部にすぎず、数量の更新と、ユーザーが履歴に基づいて提案された値を自動的にコピーできるようにするために完全に機能します。
しかし、下部にある「すべて更新」というボタンを 1 つだけ作成して、ショッピング カート全体を 1 つの大きなフォームにしたい場合、数量フォームを変更して、未知の動的な数のアイテムを読み取ることができるようにするにはどうすればよいですか?データベースを更新しますか?それを達成するための良い戦略は何ですか?