Как утверждать, что флажок оценивает с методом сообщения PHP

<input type="checkbox" class='form' name="checkbox_1" />

<input type="checkbox" class='form' name="checkbox_2" />

<input type="checkbox" class='form' name="checkbox_3" />

.........

<input type="checkbox" class='form' name="checkbox_10" />

От был отправлен с помощью метода "POST". определите, какой из флажков и пишут их числам в увеличивающемся порядке. Разделенный все числа пробелами (не новые строки) и не используют форматирования HTML.

Для, например:

Если флажки 3, 5 и 10 проверяются.

Ouput был бы:

3 5 10

8
задан Shoban 21 February 2010 в 23:08
поделиться

2 ответа

Измените разметку на что-то вроде

<input type="checkbox" class='form' value="1" name="checkbox[]" />
<input type="checkbox" class='form' value="2"  name="checkbox[]" />
<input type="checkbox" class='form' value="3"  name="checkbox[]" />

и для получения представленных значений используйте простой цикл

foreach($_POST['checkbox'] as $checkbox){
    echo $checkbox . ' ';
}
21
ответ дан 3 November 2019 в 12:27
поделиться

Итерация массива $_POST и использование preg_match() для извлечения номера, если он начинается с "checkbox_":

$checked = array();
foreach ($_POST as $k => $v) {
  if (preg_match('|^checkbox_(\d+)$!', $k, $matches) {
    $checked[] = $matches[1];
  }
}
echo implode(' ', $matches);
5
ответ дан 3 November 2019 в 12:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: