我在drupal网站上有自定义登录表单。表格将ajax发送到其他应用程序(非drupal)。此应用将数据写入$_SESSION
并将"success"
返回到drupal网站。但是在Drupal我有空$_SESSION
。
我觉得session.inc
有麻烦,因为drupal设置了自己的会话存储功能,但我无法找到disapper my $_SESSION
值的位置。我知道$_SESSION
中有数据,因为什么时候有
session_start();
print_r($_SESSION);
在drupal index.php
文件中,我看到完整的$_SESSION
数组。
有人有任何想法吗?
答案 0 :(得分:0)
我认为您可以在代码中引导Drupal,并在Drupal引导后编写会话。这会将SESSION数据写入数据库,并允许您继续Drupal而不会出现问题。
但是,一旦用户返回,Drupal不会计算您的SESSION数据,这对我来说是不合逻辑的......因为启动会话的代码在启动之前会读取SESSION。
Drupal和您的外部应用程序是否可能正在处理不同的会话ID?
https://api.drupal.org/api/drupal/includes!session.inc/function/drupal_session_start/7.x
希望有所帮助!