Отправка непроверенных флажков в PHP - PullRequest
0 голосов
/ 08 октября 2011

У меня есть поле флажка в моей таблице HTML.Таблица генерируется динамически, а поле сохраняется в массиве следующим образом:

<input type="checkbox" name="checked[]" value="1">

В PHP я вставляю проверенные строки в таблицу, но мне также нужноотобразить строки, которые не были проверены пользователю после отправки, но нет способа узнать, какие строки не были переданы, поскольку checked[] для непроверенных флажков не отправляются.

Что я хочу сделатьЕсли пользователь отображает таблицу с несколькими строками, он проверяет, какие строки он хочет добавить в базу данных.После отправки формы страница должна отображать, какие строки были вставлены, а какие не были выбраны пользователем.Не проверенные строки не нужно вставлять в какую-либо базу данных, но они должны отображаться пользователю только ОДИН РАЗ, сразу после отправки, чтобы он мог распечатать страницу для целей записи.

Что является лучшим способом решенияэто проблема?

Ответы [ 2 ]

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

, так как вы создаете чекбокс на первом месте, чтобы вы знали общее количество флажков.

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

unchecked boxes = total checkboxes -  checked checkboxes ;
0 голосов
/ 08 октября 2011

Используйте 3 массива, 1 из которых содержит параметры, которые вы отправляете, один с ответами пользователя и один пустой, который будет содержать разницу. Разница между этими двумя вы получите непроверенные поля.

<?php

$myOptions = array('option1', 'option2', 'option3');
$userArray = array('option2'); // This is your $_POST['checkboxes'] array
$leftOptions = array();

foreach ($myOptions as $value){
  if (!in_array($value, $userArray)){
    $leftOptions[] = $value;
  }
}

?>

Примечание: вы можете заменить foreach на array_diff, указав @deceze в комментарии.

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