代码之家  ›  专栏  ›  技术社区  ›  Scoobler

从php Zend Framework站点发送帖子

  •  1
  • Scoobler  · 技术社区  · 15 年前

    我目前正在使用ACL开发zend框架站点。

    ACL工作并使用DB来存储特权。到目前为止,我所做的是,在preDispatch中,我捕获用户想要去的地方,如果他们需要登录才能到达那里,页面会显示登录表单。我还捕获了用户是否提交了表单并存储了数据(位置和表单数据)。到目前为止没有问题。

    用户提交登录表单,然后我检查是否有位置可以将它们发送到,同样,这里没有问题,这是可行的。

    $this->getRequest()->isPost()
    

    失败,因为它不是post请求。

    我可以在成功登录时将用户转发到页面,并在preDispatch set$u POST中将最初捕获的数据转发到该页面,这可以作为原始的POST仍然有效,但我不认为这样做是正确的-特别是URL-显然显示的页面是正确的,表单已正确提交,但URL是登录过程的。

    显然我可以改变使用 $this->getRequest()->isPost()

    1 回复  |  直到 15 年前
        1
  •  0
  •   netcoder    15 年前

    通常的做法是(在许多网站上都可以看到),将表单数据和请求的操作存储在会话中,然后将用户重定向到登录页面。授权登录后,您将读取会话中任何挂起的操作,重新加载表单,并用会话中的数据填充表单(之后正确地从会话中清除任何挂起的操作)。用户只需再次单击提交。

    另一种方法是使用HttpClient并将数据作为POST提交。

    推荐文章