Мне удалось получить пример, показанный в учебнике по Zend Mutipage. http://framework.zend.com/manual/en/zend.form.advanced.html код работает, однако я испытываю проблему с проверкой.
Первая часть формы загружается нормально, однако, когда я нажимаю кнопку «сохранить и продолжить» во второй части формы, она включает сообщения об ошибках проверки.(Это неверно, потому что ошибки проверки должны появляться только при отправке пользователем второй части формы).
Мне кажется, пример, показанный на странице учебника Zend Framework
if (!$temp->formIsValid())
{
$form = $this->getNextSubForm();
$this->view->form = $this->getForm()->prepareSubForm($form);
return $this->render('prepaid-funeral-plan');
}
Проверка, является ли вся форма действительной или нет, но это вызывает проблему, что ошибка проверки появляется во второй части подчиненной формы, прежде чем пользователь отправит данные.
Вот полный код формы. ProcessAction()
public function processAction()
{
if (!$form = $this->getCurrentSubForm()) {
// if there's no form data goto the beginning form stage
return $this->_forward('prepaid-funeral-plan');
}
if (!$this->subFormIsValid($form,$this->getRequest()->getPost()))
{
$this->view->form = $this->getForm()->prepareSubForm($form);
return $this->render('prepaid-funeral-plan');
}
if (!$this->formIsValid())
{
$form = $this->getNextSubForm();
$this->view->form = $this->getForm()->prepareSubForm($form);
return $this->render('prepaid-funeral-plan');
}
// Valid form!
// Render information in a verification page
$this->view->info = $this->getSessionNamespace();
$this->render('verification');
//Clear the session data!
Zend_Session::namespaceUnset($this->_namespace);
}
Большое спасибо заранее!