Drupal 7中的自定义会话变量

时间:2014-04-04 07:46:07

标签: php json drupal drupal-7

我试图在Drupal中制作自定义表单。此表单调用Web服务并将收到一些Json。在这个Json响应中,我有三个信息(或错误):  1.用户名  2.用户语言  3.用户自定义令牌(特殊用于其他webapp)

这三个信息必须放在会话中(或其他任何内容),并会显示在某些网页中。

例如,在每个页面上,它都将被写成" Hello先生约翰",并且在一些网页上我想显示一个图标+链接与自定义令牌以访问另一个Web应用程序,。 ..

我们已经有很多用户,而且我们不想让drupal数据库中的所有用户都拥有。

我该怎么办?我正在使用Drupal 7

提前致谢

1 个答案:

答案 0 :(得分:0)

我写了这个函数来处理Drupal中的会话

function _mySite_session($key, $value = NULL)
{
    static $storage;
    if ($value)
    {
        $storage[$key] = $value ;
        $_SESSION['mykey'][$key] = $value ; // I use 'mykey' as a session key because in case some other module uses 'type' in $_SESSION. So try to make it unique.
    }
    elseif (empty($storage[$key]) && isset($_SESSION['mykey'][$key]))
    {
        $storage[$key] = $_SESSION['mykey'][$key];
    }
    return $storage[$key];
}

设置会话变量:

_mySite_session("USERNAME", "Mr. John");

并检索会话变量的值:

$username = _mySite_session("USERNAME");