динамическое изменение обязательного поля - PullRequest
0 голосов
/ 05 мая 2010

В моем проекте мой менеджер проекта говорит мне, чтобы я указывал 'обязательное поле', если страна является единым целым, и поле города необязательно, если страна не является США.

Как это сделать? Любая помощь?

Ответы [ 3 ]

0 голосов
/ 05 мая 2010

В сценарии PHP, который вызывается при отправке формы, вы можете проверить, является ли страна «Соединенные Штаты», и, если это так, проверить, выбрано ли государство. Если это не так, отправьте пользователя обратно на страницу с формой с сообщением об ошибке проблемы.

0 голосов
/ 05 мая 2010

Так что это в основном проверка на основе правил. Правило простое в вашем случае. Такие правила могут стать еще сложнее. Есть два варианта.

Во-первых, просто сделайте жестко запрограммированную проверку. Означает, что вы проверяете значение поля «состояние», а затем проверяете поле «состояние» во время выполнения. Это означает, что в случае изменения правила вы меняете код.

Во-вторых, вы помещаете эти правила вне кода (файлы конфигурации, базы данных и т. Д.) И динамически загружаете правила и проверяете их соответственно. Это делает первоначальный дизайн сложным, но обслуживание легким.

0 голосов
/ 05 мая 2010

Я ничего не знаю о том, как вы проверяете данные формы, поэтому я могу предоставить вам только базовую логику. Вы должны адаптировать это ....

if ( $_POST['country'] == 'US' && !$_POST['city'] ) {
    $error = "city is required";
}

Но, учитывая, насколько это просто, я чувствую, что, возможно, ваш вопрос что-то упустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...