在PHP邮件中仅发送复选框中的一个值

在PHP邮件中仅发送复选框中的一个值,php,magento,Php,Magento,我正在使用一个具有foreach循环的脚本,它根据在Magento的管理区域中设置的内容显示正确数量的复选框 我面临的问题是,可能有多个复选框,但是只有最靠近顶部的复选框是表单发送的值。我需要发送所有选中的复选框值 这就是我在邮件脚本中获取复选框值的内容$check=$\u POST['check'] 下面的代码使用foreach来显示正确数量的复选框 <?php $SKU = "1282670_01"; $product = Mage::getModel('catalo

我正在使用一个具有foreach循环的脚本,它根据在Magento的管理区域中设置的内容显示正确数量的复选框

我面临的问题是,可能有多个复选框,但是只有最靠近顶部的复选框是表单发送的值。我需要发送所有选中的复选框值

这就是我在邮件脚本中获取复选框值的内容
$check=$\u 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>

  • getSwatch()?>“>
    您所有的复选框都具有相同的名称,因此只有一个复选框会出现在您的
    $\u POST
    数组中。请将代码更改为使用唯一的名称,或使用数组形式,即
    name=“check[]”

    您只允许一个输入为名称提交其值(对于单选按钮,它使用的是“开”的值)但是,您可以通过将名称更改为
    check[]
    将该键/值对转换为一个数组。每个
    check[]
    将组合成一个数组,并作为
    name=>['value1'、'value2'、'value3']

    类似地,您可以使用键,而不是将其推到数组的末尾,如
    name=“check[]”value=“true”
    PHP会将其显示为
    array('red'=>'true','blue'=>'true')
    太好了,你删除了一个问题。在一个重新发布的问题中,我的答案几乎是正确的。现在其他人不得不告诉你我做过的事情。你很有趣。我已经将名称改为
    check[]
    并在邮件中添加了
    $check=array();但在电子邮件中我只得到了
    array`而没有数据?