0

これは私のSQL構造です:

TABLE= 製品

id_products - title_products - price_products - id_stock
1           - Teddy          - 15             - 1  
2           - Balloon        - 10             - 1

現在、複数の製品を含むこのフォームがあり、これが他のページにデータを送信する方法です:

入力はループ内にあるため、複数の製品が SQL DB からロードされ、ID が配列で次のページに送信されます。

<input name="prod[<?=$id?>]" id="prod[<?=$id?>]" type="checkbox" value="<?=$id?>">
<input name="prod[<?=$id?>]" id="prod[<?=$id?>]" type="checkbox" value="<?=$id?>">
<input name="prod[<?=$id?>]" id="prod[<?=$id?>]" type="checkbox" value="<?=$id?>">

次のページで、この SQL クエリ ループを呼び出します。

$sql="select * from table where id_stock<>'0' and id_products IN (".$ids.")";

つまり、選択した製品からすべての IDS を送信し、次のページで SQL の IN 関数を使用してそれらの IDS からすべての情報を取得します。


今私が達成したいのはこれです:

SQL 構造のアイデア #1

TABLE= 製品

id_products - title_products - price_products - id_stock
1           - Teddy          - 15,20          - 1  
2           - Balloon        - 10,15          - 1

SQL 構造のアイデア #2

TABLE= 製品

id_products - title_products - id_stock
1           - Teddy          - 1  
2           - Balloon        - 1

表=価格

id_price_products - id_products - title_products - price_products
1                 - 1           - Small          - 15
2                 - 1           - Big            - 20
3                 - 2           - Small          - 10
4                 - 2           - Big            - 15

フォーム選択:

echo '<select  id="prod['.$id.']" name="prod['.$id.']" >';
foreach($price_ex as $price) {
    echo'<option value="'.$price_id.'">'.$price.'</option>';
}                                   
echo'</select>';

しかし、次のページでどうすればよいかわかりません。以前は価格が 1 つしかなかったので、ユーザーは複数の価格オプションを持っているため、SQL は選択された IDS と選択された価格から情報を取得する必要があります。

これを解決する方法について助けていただければ幸いです、tx.

4

0 に答える 0