$value) { if (preg_match('/^qa-(\d+)-(\d+)$/', $key, $matches)) { // if ($value === "") continue; // if ($value == 1 || $value == 2 || $value == 3 || $value == 4 || $value == 0) $insert[$matches[1]] = $value; //print_r($matches); $insert[$matches[1]][$matches[2]]['new'] = true; //mdb2_exec($db, "INSERT INTO eff_q2m2p ( eff_meeting_id, ppl_id, eff_question_id ) VALUES ( 1, %i, %i)", // $matches[1], $matches[2]); } } foreach ($insert as $ppl_id => $vragen) { $all = mdb2_col($db, 0, "SELECT eff_question_id FROM eff_q2m2p WHERE ppl_id = $ppl_id AND eff_meeting_id = %i", $_POST['meeting_id']); foreach ($all as $question_id) { $insert[$ppl_id][$question_id]['old'] = true; } } foreach ($_POST['ppl_id'] as $ppl_id) { if (!isset($insert[$ppl_id])) mdb2_exec($db, "DELETE FROM eff_q2m2p WHERE eff_meeting_id = %i AND ppl_id = %i", $_POST['meeting_id'], $ppl_id); } foreach ($insert as $ppl_id => $vragen) { foreach ($vragen as $question_id => $status) { if (isset($status['new']) && isset($status['old'])) continue; // do nothing if (isset($status['new'])) mdb2_exec($db, "INSERT INTO eff_q2m2p ( eff_meeting_id, ppl_id, eff_question_id ) VALUES ( %i, %i, %i )", $_POST['meeting_id'], $ppl_id, $question_id); if (isset($status['old'])) mdb2_exec($db, "DELETE FROM eff_q2m2p WHERE eff_meeting_id = %i AND ppl_id = %i AND eff_question_id = %i", $_POST['meeting_id'], $ppl_id, $question_id); } } header("Location: select.php?meeting_id=".$_POST['meeting_id']); ?>