ZF Form отказывается от POST - PullRequest
       12

ZF Form отказывается от POST

1 голос
/ 19 августа 2010

Я озадачен этим. У меня есть действие входа в систему, которое выглядит так:

public function loginAction()
{
    $form = new Application_Form_Login;
    $form->setAction("/users/login");

    $request = $this->getRequest();

    var_dump($request->isPost());
    if ($request->isPost() && $form->isValid($request->getPost())) {
        // snipped code that is never reached anyway
    }

    $this->view->form = $form;
}

И форма:

class Application_Form_Login extends Zend_Form
{
    public function init()
    {
        $this->setMethod("post");

        $email = new Zend_Form_Element_Text("email");
        $email->addFilter("StringTrim")
              ->addValidator("NotEmpty")
              ->addValidator("EmailAddress")
              ->setRequired(true)
              ->setLabel("Email address");
        $this->addElement($email);

        $password = new Zend_Form_Element_Password("password");
        $password->addFilter("StringTrim")
                 ->addValidator("NotEmpty")
                 ->setRequired(true)
                 ->setLabel("Password");
        $this->addElement($password);

        $submit = new Zend_Form_Element_Submit("finish");
        $submit->setLabel("Login");
        $this->addElement($submit);
    }
}

var_dump($request->isPost()) всегда возвращает false, но в большинстве идентичных действий это работает отлично! Есть идеи?

1 Ответ

1 голос
/ 19 августа 2010

Я отследил это.У меня было перенаправление на / users для перенаправления обратно на / users / login, если пользователь не вошел в систему. Я не сохранял результат Zend_Auth в хранилище, поэтому у меня сложилось впечатление, что вход в систему ничего не делал.

POST http://localhost/users/login (302 Found)
GET http://localhost/users
GET http://localhost/users/login
...