foreach ループを持つスクリプトを使用しています。これは、Magento の管理領域で設定されている内容に応じて、適切な量のチェックボックスを表示します。
私が直面している問題は、複数のチェックボックスが存在する可能性があることですが、一番上で選択されているチェックボックスのみがフォームで送信される値です。選択したすべてのチェックボックスの値を送信する必要があります。
これは、チェックボックスの値を取得するためにメールスクリプトにあるものです$check = $_POST['check'];
これは、foreach を使用して適切な量のチェックボックスを表示する以下のコードです。
<?php
$SKU = "1282670_01";
$product = Mage::getModel('catalog/product')->loadByAttribute('sku',$SKU);
if($product->getTypeId() == "configurable"){
$childs = $product->getTypeInstance()->getUsedProducts();
}
$i = 0;
foreach ($childs as $child) { ?>
<?php $colour_name = $child->getAttributeText('real_colour'); ?>
<li class="notranslate focused" id="fo143li2">
<fieldset>
<div>
<span>
<img width="35" height="35" src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . 'catalog/product' . $child->getSwatch() ?>">
<input type="checkbox" style="margin-top:-10px;" onchange="handleInput(this);" tabindex="5" value="<?php echo $colour_name ?>" class="field checkbox" name="check" id="<?php echo $colour_name ?>">
<label for="<?php echo $colour_name ?>" class="choice"></label>