我想在提交表单之前强制匿名注册帐户。 所以我必须允许匿名访问表单, 然后我使用hook_form_FORM_ID_alter来编辑表单。然后,如果被匿名点击,我想将提交按钮重定向到另一个链接。(我仍然不知道该怎么做。如果有人能告诉我的话会很好) 这是正确的解决方案吗?
现在, 我有一个弹出登录表单(Modal表单和Facebook OAuth)。在表单中有一个注册按钮。然后,如果用户选择注册我想保留他已经输入的表单并在确认他的电子邮件后显示它。
谢谢。
答案 0 :(得分:1)
在我的头脑中,我会允许匿名用户或注册用户提交表单。
在我的函数MYMODULE_MYFORM_submit()
中,我会检查用户是否已登录。
如果是,则按正常方式继续,如果不是,则将表单存储在临时SESSION变量或自定义MySQL表中,并使用drupal_goto('user')
将用户转发到登录/注册页面(mysite.com/user)
一旦用户注册,您就可以检查SESSION数组或MySQL表中是否存在该表单,然后继续执行该过程,就像用户首先登录一样
希望这有意义或有帮助