FOSUserBundle如何通过检查同一页面进行表单登录?

时间:2015-03-30 16:08:41

标签: php symfony login fosuserbundle

我想使用FOSUserBundle在我的网站上创建新的登录表单。问题是我不知道如何连接登录页面和检查页面......

我创建了登录表单:

<form action="{{ path("fos_user_security_check") }}" method="post">
  <input type="hidden" name="_csrf_token" value="{{ csrfToken }}" />

  <input type="text" name="_username" id="email" placeholder="Username" />
  <input type="password" name="_password" id="password" placeholder="Password" />
  <input type="checkbox" name="_remember_me" id="remember-me" />

  <input class="button" type="submit" name="_submit" value="Login!" />
</form>

我的security.yml:

security:
    firewalls:
        main:
            pattern: ^/
            form_login:
                login_path: fos_user_security_login
                check_path: fos_user_security_check
                provider: fos_userbundle
                csrf_provider: form.csrf_provider
                default_target_path: /
            logout:
                path: fos_user_security_logout
                target: my_bundle__homepage
            anonymous:    true

如果一切正常,那么Symfony会在主页上重定向我 - 没关系。但是当用户输入错误的用户名和密码时,Symfony会将其重定向到默认的FOSUserBundle检查登录页面(fos_user_security_check)。我想更改它并在登录页面上显示错误消息,但我不知道该怎么做...有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您只需为以下路线设置路线:

failure_path

form_login部分