Zend Framework - проверка формы на заказ - PullRequest
0 голосов
/ 29 августа 2011

Я делаю многостраничную форму, но я не использую подформу - просто сохраняю данные в mySQL.

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

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

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

1 Ответ

2 голосов
/ 29 августа 2011

Не думаю, что вам нужно что-либо изменять.

Zend не проверяет форму JavaScript, она выполняется на стороне сервера, поэтому форма отправляется и данные POST / GET генерируются независимо. Только в вашем действии вы называете $form->isValid($_POST);

Действие, которое вы отправляете на предварительные и заключительные этапы, должно отличаться, например processPreliminaryAction() и processFinalAction().

На ваших предварительных шагах вы можете перебирать отправленные элементы формы и вызывать isValid() для каждого элемента, затем вы можете сохранить, было ли поле действительным в MySQL вместе с его значением.

При окончательном представлении вы набираете isValid() во всей форме и продолжаете делать то, что вам нужно, только если оно ИСТИНА.

...