как получить значение нескольких невыбранных флажков в php?

#php

#php

Вопрос:

я пробовал для выбранных чекбоксов, но

 <form action="#" method="post">
<input type="checkbox" name="check_list[]" value="C/C  "><label>C/C  </label><br/>
<input type="checkbox" name="check_list[]" value="Java"><label>Java</label><br/>
<input type="checkbox" name="check_list[]" value="PHP"><label>PHP</label><br/>
<input type="submit" name="submit" value="Submit"/>
</form>

<?php
    if(isset($_POST['submit'])){//to run PHP script on submit
        if(!empty($_POST['check_list'])){
    // Loop to store and display values of individual checked checkbox.
        foreach($_POST['check_list'] as $selected){
        echo $selected."</br>";
        }
      }
    }
?>
  

как получить значение для невыбранных флажков?

Комментарии:

1. Пожалуйста, обратите внимание, что ваши невыбранные флажки не будут доступны в ваших данных POST. Ваш пост будет содержать только те, которые отмечены.

2. но мне требуется значение нескольких невыбранных флажков?? каково решение для этого??

3. но мне требовалось значение невыбранного флажка??? каково решение

4. Пожалуйста, взгляните на мой ответ. Это решит вашу задачу.

Ответ №1:

Пожалуйста, обратите внимание, что ваши невыбранные флажки не будут доступны в ваших данных POST. Ваш пост будет содержать только те, которые отмечены.

Вы можете сохранить все возможные параметры в $options , и все отмеченные параметры в $checked .

Мы можем найти непроверенные параметры, используя array_diff, т.е. найдя разницу между $options и $selected .

 if (isset($_POST['submit'])) { //to run PHP script on submit
    $options = array("C/C  ", "Java", "PHP");
    $checked = isset($_POST['check_list']) ? $_POST['check_list'] : array();
    $unchecked = array_diff($options, $checked);
    /* Other code */
 }