1. PHP / Говнокод #2524

    +148.7

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public function executeLogin(sfWebRequest $request)
      {
        if ($request->isMethod('post'))
        {
          if (SessionPeer::auth($request->getPostParameter('email'), $request->getPostParameter('password')))
          {
            return $this->redirect($this->getRequest()->getUri());
          }
          $this->getUser()->setFlash('error.login', true);
          return;
        }
      }

    Полезно иногда открывать недавно написанное и так бегло просматривать на предмет нелепостей. В данном случае улыбнул последний return;

    Запостил: miami, 02 Февраля 2010

    Комментарии (11) RSS

    • а что за метод setFlash() ?
      Вспышка слева?
      Ответить
      • Adobe Flash справа
        Ответить
      • http://www.symfony-project.org/book/1_2/06-Inside-the-Controller-Layer#chapter_06_sub_flash_attributes да, вспышка
        Ответить
    • О, симфони ) Я обычно для аутентификации делаю AuthForm, но и предложенный способ имеет право на существование. Это дело вкуса.

      Еще $this->getRequest() лишнее, ведь уже есть $request.
      Ответить
    • Та ну, а может там вначале было return sfView::ERROR ?
      А ваще поставить sfGuard и не париться =)
      Ответить
      • и loginError.php будет полной копией loginSuccess.php? Только зачем это ) Не залогинился - попробуй снова, в той же форме, а ошибку отобразит Flash-сообщение.

        По уму конечно правильно сделать форму через механизм форм и привязать к Request со всякими валидаторами, как говорит HyperGeek. Эту тему я ещё не до конца осилил, и немного опасаюсь неосиленного.

        sfGuard хорош, но отпадает.Это фича для стандартного зашёл-вышел, увы, здесь не покатит.
        Ответить
    • ниасилил - а в чем прикол то?
      Ответить
      • В последнем return.
        Без него метод также возвращает null
        Ответить
    • показать все, что скрытоvanished
      Ответить
    • показать все, что скрытоvanished
      Ответить

    Добавить комментарий