次のようなフォームからデータを挿入しようとしています:
<input type="checkbox" name="single_color_show[]" value="1" id="1" checked>
<input type="text" name="single_color_val[]" class="input-admin-val" value="0" id="1">
<input type="hidden" name="single_color_name[]" value="Vit: (NCS S0502-Y)" id="1">
<input type="hidden" name="single_color_head[]" value="colors" id="1">
<input type="hidden" name="single_color_standard[]" value="1" id="1">
<input type="hidden" name="single_color_order[]" value="1" id="1">
<input type="hidden" name="single_color[]" value="1" id="1"></td>
等々...
私が欲しいのは、すべての値をデータベースに保存することです。これは、single_color_showがチェックされている限り正常に機能します。ただし、データを挿入する必要がありますが、値を1ではなく0にして、スクリプトがデータを非表示にする必要があることを認識します。
これは私のphpコードです:
$single_color_show = $_POST['single_color_show'];
$single_color = $_POST['single_color'];
$single_color_name = $_POST['single_color_name'];
$single_color_val = $_POST['single_color_val'];
$single_color_head = $_POST['single_color_head'];
$single_color_standard = $_POST['single_color_standard'];
$single_color_order = $_POST['single_color_order'];
foreach($single_color_order as $key => $n) {
$s_color = "INSERT INTO product_attributes (products_id, att_name, att_head, att_val, att_standard, att_order, att_show) VALUES ('".$products_id_enkel."', '".$single_color_name[$key]."', '".$single_color_head[$key]."', '".$single_color_val[$key]."', '".$single_color_standard[$key]."', '".$single_color_order[$key]."', '".$single_color_show[$key]."');";
$q = mysql_query($s_color) or die ('Error posting data enkeldörr färg');
}
すべての選択肢をチェックしたままにしておく限り、データは美しく保存されますが、将来の編集のためにデータを取得する必要があるため、選択した属性に合わせて提示されたすべての選択肢が必要です。
チェックすると、3つの選択肢のうち2つを選択して、データをこのように保存したいとします。
products_id, att_name, att_head, att_val, att_standard, att_order, att_show
12 Red Color 80 1 1 1
12 Blue Color 50 0 2 0
12 Green Color 70 0 3 1
これは私が今得ているものです:
products_id, att_name, att_head, att_val, att_standard, att_order, att_show
12 Red Color 80 1 1 1
12 Green Color 70 0 3 1