В настоящее время у меня есть список выбора, который работает почти идеально.Проблема, с которой я сталкиваюсь, это когда все ранее выбранные элементы не выбраны и форма отправлена, один элемент остается выбранным.Почему это происходит?Какие изменения мне нужно внести в мой код, чтобы удалить все элементы, если они не выбраны.Заранее спасибо!мой код ниже:
$domain_records = $DB->get_records('tag', ['tagtype' => 'domain'], $sort = 'rawname', '*');
if(!empty($_POST["domain_list"]) || isset($_POST["domain_list"])){
$posted_domains = $_POST["domain_list"];
// elseif logic submits newly selected tags
foreach($domain_records as $domain_record) {
// already selected and still selected
if(in_array($domain_record->id, $posted_domains) === true &&
$DB->record_exists('table name', array('journal_publication_id' => $pubid, 'tag_id' => $domain_record->id))) {
continue;
}
// selected and no longer selected on post
else if(in_array($domain_record->id, $posted_domains) === false &&
$DB->record_exists('tcors_journal_tags_matrix', array('table name' => $pubid, 'tag_id' => $domain_record->id))) {
// DELETE ME!!!!
$DB->delete_records("table name", array('journal_publication_id' => $pubid, 'tag_id' => $domain_record->id));
}
}
else if(in_array($domain_record->id, $posted_domains) === true) {
//submit values into db
}
}
}