Перейти к содержимому


Условие на возможность добавления записи в таблицу


Сообщений в теме: 5

#1 vasiliy.zorenko

    Активный участник

  • Пользователи
  • PipPipPip
  • 31 сообщений

Отправлено 02 Ноябрь 2010 - 19:45

Исходные данные.

Есть таблица в которой есть 2 поля. ПолеА и ПолеБ

ПолеА является связью с справочником в котором есть 5 значений:
Значение1
Значение2
Значение3
Значение4
Значение5

ПолеБ не обязательное поле.

Нужно реализовать следующее.
ПолеБ можно заполнить только в том случае, если в ПолеА Значение1 или Значение2.
Если в ПолеА Значение3, Значение4 или Значение5, то ПолеБ невозможно заполнить.

Если условие не выполнено и пользователь нажимает "Сохранить", то ему выпадает MessageBox и снова предлагается отредактировать эту же запись с теми же введенными данными.

Как это реализовать?

#2 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 03 Ноябрь 2010 - 10:13

Тут необходимо примерно следующее условие. Если поле А!= Значение1 или ПолеА!= Значение2, то
Выводить MessageBox, и возвращать пустое значение.

#3 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 15 Декабрь 2010 - 17:42

у меня похожая ситуация: есть таблица с несколькими полями
"Корреспондент" - связанный список
поле2 - текст
нужно если оба поле пустое - не давать сохранять данные, и выводить текстовую ошибку.
В вычислениях таблицы поставил следующий код

$card = data_table("Журнал","id={ID}");
if (empty($card['Корреспондент']))
{
echo '$card is either 0 or not set at all';
return;
};


в результате ошибку то он показывает, но при этом сохраняет данные т.е поле "Корреспондент" сохраняется пустым
Купил лицензию КБ

#4 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 15 Декабрь 2010 - 18:31

Правильно, дело в том, что вычисления происходят после сохранения. Т.е. сначала идет сохранение данных, которые Вы занесли, а только затем вычисления.

#5 OLDest

    Активный участник

  • Пользователи
  • PipPipPip
  • 268 сообщений
  • Пол:Мужчина
  • Город:Калининград

Отправлено 16 Декабрь 2010 - 04:48

а как сделать так чтоб возвращать пользователя на предыдущую страничку чтобы он ввел значение
Купил лицензию КБ

#6 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 16 Декабрь 2010 - 09:56

Немного не понятно, что есть предыдущая страничка?
Если Вы имеете ввиду страничку редактирования записи, то Вам просто необходимо добавить строку типа
echo "<script>location.href='".$config["site_root"]."/view_line.php?table=номер_таблицы&line={ID}&edit_mode'</script>";





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных