2

我有一个复选框列表,这些复选框显示正确并返回所有被选中的值。我在我的代码的一部分中使用它,但也想检查数字或框。复选框是这样的:

<div id="ironSet">
                                Include in Set
    <input type="checkbox" name="iron[]" value="3" />
    <span class="smallfont">3</span>
    <input type="checkbox" name="iron[]" value="4" />
    <span class="smallfont">4</span>
    <input type="checkbox" name="iron[]" value="5" />
    <span class="smallfont">5</span>
    <input type="checkbox" name="iron[]" value="6" />
    <span class="smallfont">6</span>
    <input type="checkbox" name="iron[]" value="7" />
    <span class="smallfont">7</span>
    <input type="checkbox" name="iron[]" value="8" />
    <span class="smallfont">8</span>
    <input type="checkbox" name="iron[]" value="9" />
    <span class="smallfont">9</span>
    <input type="checkbox" name="iron[]" value="PW" />
    <span class="smallfont">PW</span>
    <input type="checkbox" name="iron[]" value="TW" />
    <span class="smallfont">TW</span>
    <input type="checkbox" name="iron[]" value="SW" />
     <span class="smallfont">SW</span>
</div>  

我像这样在 php 审查表单中回显这些值

$iron = join(", ", $_REQUEST["iron"]);

echo (!empty($_REQUEST['iron'])) ? "<div class='reviewItem'><span class='reviewTitle'>In Set:</span>{$iron}</div>" : "";

这将返回所有检查的值(如果有)。有没有办法让我可以随意"iron[]"检查框的数量并将其存储在另一个变量中?我试图将检查的框数乘以价格变量。

4

2 回答 2

0

由于复选框以数组的形式返回,所以据我所知,您应该能够简单地对它们进行计数。这是因为在请求中仅发送选中的框。

$boxesChecked=count($_REQUEST["iron"]);
echo $boxesChecked;

从那里,您可以根据需要简单地应用您的逻辑:

if($boxesChecked>5) // apply 20% discount
{
    $dollarValue*=0.8;
}
于 2013-09-12T01:11:15.553 回答
0

采用:

echo $_REQUEST['iron'][0]; // 3
echo $_REQUEST['iron'][1]; // 4
echo $_REQUEST['iron'][2]; // 5
echo $_REQUEST['iron'][3]; // 6
echo $_REQUEST['iron'][4]; // 7
echo $_REQUEST['iron'][5]; // 8
echo $_REQUEST['iron'][6]; // 9
echo $_REQUEST['iron'][7]; // pw

并将您的条件应用于这些..您可以使用循环来确定是否检查过天气

foreach( $_REQUEST['iron'] as $val)
{
  if(!empty($val))
 {
 echo $val;
 }
}
于 2013-09-12T01:30:38.107 回答