3

在我直接回答我的问题之前,先介绍一下我一直在做什么的背景。

我用了Toboggan Drupal Module,让用户完成注册后自动登录

在注册页面,有一个价格计划供用户选择。

  • 4.95 美元
  • 14.95 美元
  • 29.95 美元

4.95 美元:

编号: p_1

重定向到页面(页面名称): 001

14.95 美元:

编号: p_2

重定向到页面(页面名称): 002

29.95 美元:

编号: p_3

重定向到页面(页面名称): 003

完成包括价格计划在内的所有注册字段后。它将被重定向到上面列出的相应页面,而不是被重定向到 mysite.com/user

在此处输入图像描述

现在问题来了,

我创建了用户成功注册后的规则。

在此处输入图像描述

动作是执行自定义 php 代码

<?php
global $user;
$uid = $user->uid;

$result = db_query("SELECT field_price_plan_value FROM field_data_field_price_plan WHERE entity_id = :uid",
    array(
        ':uid' => $uid
    ))->fetchField();

if ($result == "p_1") {
    header("Location: 001");
} else if ($result == "p_2") {
    header("Location: 002");
} else if ($result == "p_3") {
    header("Location: 003");
}

用户注册后,用户没有重定向到某个页面。例如,我在成功注册后选择了 14.95 美元,我应该被重定向到mysite.com/002,但我只是重定向到默认的 mysite.com/user。

有什么可能的解决方案吗?一个帮助会很好。

我什至使用了 drupal_goto() 而不是 header(),但仍然没有用。

编辑

这是一些重复的问题,但是,我仍然没有设法很好地解决我的问题。

如果用户属于某个角色,如何在登录后将用户重定向到特定页面?

Drupal 7 系统通过规则模块重定向

https://drupal.stackexchange.com/questions/50300/how-to-redirect-anonymous-users-to-login-page-using-rules-module

4

0 回答 0