Как сделать, когда выбрано много значений checkbox?

Sunny05

Новичок
Как сделать, когда выбрано много значений checkbox?

Здравствуйте, у меня есть форма с элементом checkbox:

<FORM ACTION="file.php" METHOD=POST>
<input type="checkbox" name="x" value="1.1">1.1 <br>
<input type="checkbox" name="y" value="1.3">1.3 <br>
<input type="checkbox" name="z" value="1.5">1.5 <br>
<input name="Submit" type=submit value="Рассчитать">
</FORM>

Если выбрано одно значение, то проблем нет:

<?php
if ($_POST['x']) echo "\n<br>Коэффициент = ",$_POST['x'];
else if ($_POST['y']) echo "\n<br>Коэффициент = ",$_POST['y'];
else if ($_POST['z']) echo "\n<br>Коэффициент = ",$_POST['z'];
else echo "\n<br>Пожалуйста вернитесь и выберите значение коэффициента";
?>

А как сделать, чтобы обработчик выполнял когда значений выбрано не одно, а несколько, чтобы они суммировались. Заранее благодарю.

-~{}~ 03.10.07 11:16:

Я уже нашла ответ),

$kof = $_POST['x']+$_POST['y']+$_POST['z'];
echo $kof;
 

jonjonson

Охренеть
PHP:
<?php
...
if (isset($_POST['item']) && is_array($_POST['item'])) {
    foreach($_POST['item'] as $value) {
        echo "{$value}<br />"
    }
}
...
?>
...
<input type="checkbox" name="item[]" value="1.1" />1.1 <br />
<input type="checkbox" name="item[]" value="1.3" />1.3 <br />
<input type="checkbox" name="item[]" value="1.5" />1.5 <br />
 

Sunny05

Новичок
А если надо не суммировать, а умножать, тогда какой будет код?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
этот символ нарисован на правой цифровой клавиатуре
 

Nogrogomed

Новичок
$kof = $_POST['x']+$_POST['y']+$_POST['z'];
echo $kof;
Sunny05
такой же, только вместо суммы - умножение
С вероятностью > 0.5 коэффициент будет = 0 + выдаст Notice.

Sunny05, после отправки формы будут передаваться только те чекбоксы, которые были помечены галочками. Остальных - на принимающей стороне не существует.
 

hammet

Новичок
jonjonson уже привел верный код. Какие тут могут быть Notice?
 

Sunny05

Новичок
<?php
if(isset($_POST["Submit"])){
foreach($_POST["x"] as $val){
if(!$con){
$con=$val;
}else{
$con=$val*$con;
}
}
print $con;
}
?>
<FORM METHOD=POST>
<input type="checkbox" name="x[]" value="2">2 <br>
<input type="checkbox" name="x[]" value="5">5 <br>
<input type="checkbox" name="x[]" value="3">3 <br>
<input name="Submit" type=submit value="Рассчитать">
</FORM>

;)
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Sunny05
1 error_reporting(E_ALL)
2 сабмит "пустой" формы
 
Сверху