Session 如何从外部PHP页面查看drupal 7会话?
我安装了Drupal7,需要在用户配置文件页面中包含一块PHP代码 我创建了一个新块,并将以下代码放入其中:Session 如何从外部PHP页面查看drupal 7会话?,session,drupal,drupal-7,drupal-modules,session-variables,Session,Drupal,Drupal 7,Drupal Modules,Session Variables,我安装了Drupal7,需要在用户配置文件页面中包含一块PHP代码 我创建了一个新块,并将以下代码放入其中: "include (http://mysite/sites/all/themes/campi_aggiuntivi.php)" 在“campi_aggiuntivi.php”中,我输入了以下代码: session_start (); print_r ($ _SESSION); 但它返回一个空数组 如何在此外部页面中与drupal会话交互 非常感谢您的支持 谢谢大家的回答。 我正在尝
"include (http://mysite/sites/all/themes/campi_aggiuntivi.php)"
在“campi_aggiuntivi.php”中,我输入了以下代码:
session_start ();
print_r ($ _SESSION);
但它返回一个空数组
如何在此外部页面中与drupal会话交互
非常感谢您的支持
谢谢大家的回答。 我正在尝试安装一个模块,并按照我的建议将其插入块avege中 我创建了test.info文件
name = Test Block
description = description Test Block
package = package Test Block
core = 7.x
dependencies[] = block
; Information added by drupal.org packaging script on 2013-02-01
version = "7.x-1.x-dev"
core = "7.x"
project = "Test Block"
datestamp = "1359680350"
但我无法确定我在文件test.module中放入了哪个函数来插入测试模块管理屏幕块
你能帮我吗?
再次感谢大家我认为您需要包括Drupal引导和一些其他必要的过程。这可能会有所帮助。我想建议的第一件事是不要包括这样的内容:
"include (http://mysite/sites/all/themes/campi_aggiuntivi.php)"
改为使用本地路径:“包括(sites/all/themes/campi_aggiuntivi.php)”
但这取决于调用的位置,如果两个文件位于同一位置(调用用户配置文件tpl文件),那么这可能会起作用:“include(campi_aggiuntivi.php)”
我假设您需要会话详细信息来确定用户id,该信息可以从$profile变量或arg(1)中检索。我没有测试您的代码,但您尝试的方式不是扩展Drupal功能的常规方式 我也希望打印($\u SESSION);实际上是打印($\u会话);在代码中,即没有空格 如果您想在用户配置文件页面中添加块,我建议使用drupal方法 Drupal已经有了一个以编程方式创建块的优秀示例 看一看里面的block_示例模块。它将为您提供可用于创建块的相关示例代码 该示例还包含有关如何在默认情况下使块显示在某些页面中的信息 创建块后,将它们放置在您想要的区域中,如左侧边栏、用户配置文件页面上启用的相关主题的内容等 在自定义模块中,您可以访问$\u会话变量 从这里开始,您可以将campi_aggiuntivi.php中的代码包含在模块本身中 或者使用以下简单的方法加载文件。当你从一个主题中调用它时,这甚至会起作用 假设您想使用自定义模块中的custom_module_name.campi_aggiuntivi.inc,从一个主题开始,然后您可以使用 比如说,
module_load_include('inc', 'custom_module_name', 'custom_module_name.campi_aggiuntivi');
上述调用将从自定义模块名称模块文件夹加载自定义模块名称.campi\u aggiuntivi.inc。这样,您就不必硬编码访问文件所需的路径。基于您的更新。。听起来您现在正试图以编程方式创建块。您可以在Drupal.org上下载以下内容。该下载中有一个块模块。我添加了包含项,但它返回以下错误:警告:包含():无法打开流:HTTP请求失败!eval()中的HTTP/1.0 500内部服务器错误(第2行/home/.sites/28/site1/web/drupal/modules/php/php.module(80):eval()代码)。警告:include():在eval()中打开“”以包含(include_path='。:/usr/share/pear:/usr/share/php')(第2行/home/.sites/28/site1/web/drupal/modules/php/php.module(80):eval()'d代码)失败。请尝试单独打开该php文件。看起来php文件没有正确打开。我的代码块是-->包含(');我的自定义页面的密码-->