【问题标题】:How does one store and retrieve custom session variables in Drupal 6?如何在 Drupal 6 中存储和检索自定义会话变量?
【发布时间】:2009-07-10 15:48:07
【问题描述】:

Drupal 使用了一个自定义会话处理程序来改变熟悉的...:

$_SESSION['foo'] = 'bar';
echo $_SESSION['foo'];

...行为。上面的“foo”会话变量不会在页面之间持续存在。

Drupal.com 上的许多 cmets 和论坛条目提出了 Drupal 出于性能原因和服务器集群支持使用自定义会话处理程序的问题。但是,我找不到回答这个问题的具体示例 - “需要在 Drupal 中跨页面管理您自己的会话变量,并且不想求助于 cookie?这就是你的做法......”

有人有这方面的经验吗?我的使用不会在外部 Drupal 页面中,而是在模板页面本身中。这适用于匿名用户,而不是登录用户。在这种情况下,$_SESSION 的行为符合预期。

【问题讨论】:

    标签: php drupal session


    【解决方案1】:

    好的,这就是答案 - $_SESSION 按预期适用于经过身份验证的用户和匿名用户 - 如果没有其他问题!

    我发现我遇到了以下问题;我的 Drupal“用户”表(或在我的情况下为“drupal_users”)缺少 UID 为零(“0”)的用户。

    Drupal 使用 UID 0 通过其自定义会话处理程序管理数据库中的会话。如果该用户在表中不存在(默认安装时应该存在),则 Drupal 无法将会话信息附加到匿名用户。

    【讨论】:

    • 删除了失效的博客链接,更改了副本。
    猜你喜欢
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    • 2020-04-07
    • 1970-01-01
    • 1970-01-01
    • 2018-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多