ユーザアクセスの場合、約50+個のチェックボックスがあります。チェックボックスは次のようになります。私はループ状であるデータベース、の値を更新/追加する介してそのそれぞれの値を持つ複数のチェックボックスを有するループを使用して複数のチェックボックスデータを更新する
<input name="PREFIX_1" type="checkbox">
<input name="PREFIX_2" type="checkbox">
<input name="PREFIX_3" type="checkbox">
...........
次のときI問題がある
foreach ($_POST as $field => $value) {
if (preg_match('/^PREFIX_/', $field)) {
$access = isset($value)?'1':'0';
$file = substr($field, 4);
$this->db->query('UPDATE_DESIRED_TABLE');
}
}
ループforeach ($_POST as $field => $value)
を使用してデータベース内の値を追加/更新し、接頭辞をチェックすると、チェックされたチェックボックスの値のみが取得され、チェックされていないデータの値は$_POST
データに含まれません。
そして、私はチェックされていない値は得られません。それはそのチェックボックスの名前さえありません。換言すれば、チェックされた値のみが設定される。
これで、データベースのデータと投稿データの両方を比較することによって、データベース内のすべてのデータの値を変更する必要がありました。
どうすればこの問題を解決できますか?
ちょうど答えのhtml部分を確認してください: - https://stackoverflow.com/questions/1809494/post-the-checkboxes-that-are-unchecked –