Оглядываясь везде, но не могу найти решение. Все говорит о том, одна группа, как так:Как получить несколько групп значений флажка в процессоре php?
<input type="checkbox" value="red" name="colors[]"> red<br />
<input type="checkbox" value="purple" name="colors[]"> purple<br>
<input type="checkbox" value="blue" name="colors[]"> blue<br>
<input type="checkbox" value="black" name="colors[]"> black<br>
, но я необходимости делать несколько групп в одной форме, как это:
<input type="checkbox" value="red" name="colors[]"> red<br />
<input type="checkbox" value="purple" name="colors[]"> purple<br>
<input type="checkbox" value="blue" name="colors[]"> blue<br>
<input type="checkbox" value="black" name="colors[]"> black<br>
<input type="checkbox" value="sm" name="sizes[]"> small<br />
<input type="checkbox" value="med" name="sizes[]"> medium<br>
<input type="checkbox" value="lrg" name="sizes[]"> large<br>
<input type="checkbox" value="xlrg" name="sizes[]"> x-large<br>
и на вершине, что форма является динамическим. имена являются переменными и неизвестными, поэтому в почтовом коде php он не может быть $ _POST ['colors'].
у меня есть этот фрагмент кода, который может захватить все неизвестные имена и построить сообщение для последующего введения в электронный скрипт для отправки по электронной почте значения представленной формы:
foreach ($_POST as $field=>$value) {
if ($field != "submit") $msg .= $field . ": " . $value . "\n";
}
, но, как вы, наверное, знаете, когда он получает набор флажков, он говорит, что это значение является «массивом», поэтому не только нужно разбить или разбить массив на несколько значений для флажков, тогда ему нужно сделать это для нескольких групп флажков.
так, например, это может быть то, что $ тзд бы на определенной форме:
first_name: first
last_name: last
email_address: [email protected]
phone: 1234567890
variable_radio_name: answer
variable_selectbox_name: answer
colors_from_checkbox_group_one: red,blue
sizes_from_checkbox_group_two: med,lrg
variable_textarea_name: blah blah blah
Textboxes, прокручиваемым, радиоприемники, выпадающие коробки все легко, потому что это один ответ кусок, но эти флажки являются боль.
EDIT
сделал это так:
if ($field != "submit") $msg .= $field . ": " . is_array($value) ? implode(',', $value) . "\n" ? $value . "\n";
и так:
if ($field != "submit") {
$msg .= $field . ": " . is_array($value) ? implode(',', $value) . "\n" ? $value . "\n";
}
ошибка синтаксиса в обоих направлениях.
См отредактированный вопрос. – leoarce