Благодарю за ответ.
Это помогло мне найти ошибку. У меня в коде стоит очистка полей формы на показ формы. Решено условием
if (form[i].type != "radio"){
form[i].value = "";
}
mea culpa. разобрался. У меня в условии перед строчкой с if(!empty($_GET['translit']) стоит проверка: if($_GET['gallery'] == 0), она и срабатывает.
Чудесный язык, 0 приравнивает к отсутствию переменной.....
пробовал. в общем вот что удалось понять. в case 'GET' обрабатывается несколько условий:
if(!empty($_GET['id']){/*считываем запись из БД по id*/}
if(!empty($_GET['gallery']){/*считываем файлы галереи*/}
if(!empty($_GET['translit']){/*проверяем translit на уникальность*/}
и не срабатывает именно в таком случае. Если if(!empty($_GET['translit']) стоит первым условием то все ок. Но это неправильно, должно работать так как написано. К примеру в соседнем скрипте аналогичная конструкция отрабатывает без проблем
Это помогло мне найти ошибку. У меня в коде стоит очистка полей формы на показ формы. Решено условием
if (form[i].type != "radio"){
form[i].value = "";
}