登录后执行一个函数并重定向到上一页


After Login Execute A Function And Redirect To Previous Page

>我创建了一个像all_elements这样的页面,其中包含list of elements,并提供了一个adding an element to wishlist的选项。

步骤如下。

  1. 如果用户已登录,则该元素将通过 ajax call 添加到愿望清单中。
  2. 如果用户未登录,则必须要求用户登录。
  3. 登录成功后,元素必须added to wishlist并重定向到 all_elements page

我正在尝试以下步骤。

  1. 如果用户未登录,请保存用于将元素添加到愿望清单并重定向到登录页面的链接。
  2. 登录成功后,其重定向到all_elements page 。但我每次session link which included adding course to wishlist都会检查.

但我认为这是糟糕的编码,因为每次我需要检查all_elements page中的会话链接时.

请向我建议良好的解决方案,这项工作将不胜感激。

如果我

理解正确,这是通过登录页面的GET参数完成的(如果表单是ajaxy,则作为POST参数)。

例如,假设我想点击需要登录的某个地方,我称之为 www.example.com/secret 的链接。

您可以将 URI 段(或整个 URL)存储为 $_GET 参数,一旦您登录函数,请检查是否存在 $_GET['重定向'],如果存在,请尝试重定向到它。

这样,"重定向"逻辑就嵌入在登录本身中,而不是嵌入到任何其他功能中,这允许您将此功能扩展到网站的任何其他部分,而不是检查会话。

这也可以使用会话来完成,将链接存储在 $_SESSION['redirect'] 变量中。无论如何,这些检查应该在登录后完成,而不是在任何单个页面中完成