在drupal 7中竞争注册后重定向用户使用规则

时间:2013-07-27 14:40:02

标签: php drupal-7 drupal-rules

在我直接回答我的问题之前,我一直在做的一些背景知识。

我使用了Toboggan Drupal模块,让用户在完成注册后自动登录

在注册页面上,有一个用户必须选择的价格计划。

  • $ 4.95
  • $ 14.95
  • $ 29.95

$ 4.95:

ID: p_1

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

$ 14.95:

ID: p_2

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

$ 29.95:

ID: p_3

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

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

enter image description here

现在问题出现了,

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

enter image description here

该操作是执行自定义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(),但仍然没有工作。

修改

这是一些重复的问题,但是,我仍然无法很好地应用我的问题。

How to redirect user to a specific page after they login if they belong to a certain role?

Drupal 7 system redirect through rules module

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

0 个答案:

没有答案