Как проверить состояние нескольких флажков? - PullRequest
0 голосов
/ 20 октября 2011

Я использую механизм проверки абсолютной позиции для моей формы.Я хотел бы проверить, выбран ли хотя бы один флажок из группы.В examples это делается путем установки того же атрибута name для группы флажков.Я не могу назвать флажки с тем же именем, потому что я сохраняю их состояние в базе данных со следующим кодом:

$values = array(
    'checkbox1'         => null,
    'checkbox2'         => null
);

foreach (array_intersect_key($_POST, $values) as $key => $value) {
    $values[$key] = mysql_real_escape_string($value);
}

$query_add_candidate=sprintf("INSERT INTO dbase (checkbox1, checkbox2)    VALUES    ('$values[checkbox1]', '$dates[checkbox2]')"

Теперь checkbox1 и checkbox2 проверяются индивидуально, потому что они имеют разные имена.Как я могу проверить, выбран ли хотя бы один из них?

Вот мой HTML-код:

<input class="validate[minCheckbox[1]] checkbox" type="checkbox" name="checkbox1" id="maxcheck1" value="1"/> Text1
<input class="validate[minCheckbox[1]] checkbox" type="checkbox" name="checkbox2" id="maxcheck2" value="2"/> Text2

Ответы [ 3 ]

1 голос
/ 20 октября 2011

на php,

if(!$_POST['checkbox1'] && !$_POST['checkbox2']){
    echo 'Error check at least one';
}

, но на самом деле вам нужен массив, HTML,

<input type="checkbox" value="ch1" name="check[]" /> 
<input type="checkbox" value="ch2" name="check[]" />

php

<?php 
if(empty($_POST['check'])){
 echo 'Error: hey, check at least one will you!?'; 
}

?>

так чтоНе нужно проверять их все по одному, особенно если у вас есть их на одной странице.

УВЕДОМЛЕНИЕ : Вы также должны знать, если флажок не отмечен, он будеттакже не может быть установлен на суперглобальном php $ _POST, в противном случае, если он отмечен галочкой, он покажет все, что держит value="...",

1 голос
/ 20 октября 2011

если опубликовано, то проверено,

, поэтому, если он у вас есть в $_POST["checkbox_name"], его проверяют, иначе он не будет опубликован.

0 голосов
/ 20 октября 2011

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

Я бы предпочел последнее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...