我刚接触过Symfony和PHP (以前使用过C++,Java),也找不到任何解决方案,无法将用户登录和注销操作登录到数据库。我想要那些具体的信息:
我在寻找最简单的解决方案。通过修改函数呈现用户登录表单,我成功地记录了用户登录上的信息,但在注销时,我不幸地失败了。我知道这毕竟是个糟糕的主意,但我想不出更好的主意。有什么建议吗?提前谢谢。
发布于 2012-08-07 20:05:48
如果您查看了这里,它表示您可以定义一个成功处理程序和一个故障处理程序,您可以使用它们将内容记录到数据库中。您还可以找到在参考文献中定义的处理程序参数。
登录
首先创建一个将security.context和entityManager作为参数的服务,并使用这两个参数来确定哪个用户登录了。然后将此服务添加到success_handler参数中,并在用户登录后调用该参数。
注销
我想,这个问题更棘手,因为我假设security.context已经没有关于用户的信息了,您无法使用它来确定哪个用户正在注销。您可能想了解一下handlers参数实际上是什么。它可能是在处理注销时调用的处理程序,因此您可以使用它。当然,您可能会登录一些失败的注销,因为如果没有成功处理程序,您就无法确定注销是否成功。另一方面,也许您可以从某个地方获得会话id (同样,security.context可能)并将其记录下来。
https://stackoverflow.com/questions/11836938
复制相似问题