Как сделать проверку на стороне сервера magento 1.9? - PullRequest
0 голосов
/ 20 февраля 2019

Я создал функцию проверки в модели, как я могу применить ее к форме при сохранении данных в базе данных?

public function validate() {
        $errors = array();
        if (!Zend_Validate::is($this->getName(), 'NotEmpty')) {
            $errors[] = 'Name is needed';
        }
        if (!Zend_Validate::is($this->getEmail(), 'NotEmpty')) {
            $errors[] = 'Email is needed';
        }

        if (empty($errors)) {
            return true;
        }
        return $errors;
    }

Как применить ее к моей форме при сохранении в базе данных?

Функция сохранения

public function postAction()
    {

        $data = $this->getRequest()->getPost();
        $session = Mage::getSingleton('core/session');
        $person = Mage::getModel('feedback/block');
        $person->setData('name', $data['name']);
        $person->setData('email', $data['email']);
        $person->setData('phone', $data['phone']);
        if(($data['subject']) == 'other'){
            $person->setData('subject', $data['other']);
        }
        else {
            $person->setData('subject', $data['subject']);
        }
        $person->setData('massage', $data['massage']);
        $person->setData('status', '0');   
        try {
            $person->save();
            $session->addSuccess('Thank for you feedback');
        } catch (Exception $e) {
            $session->addError('Error');
        }
        $this->_redirect('feedback/index/index');
 }
}
...