我正在尝试与my_module.module文件中的其他php文件中的外部数据库进行交互,但是我收到此错误:
Call to undefined function db_set_active()
我试过了:
drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE);
db_set_active('my_external_db');
但徒劳无功。
请帮助
编辑:
我的.php文件被称为jQuery.ajax,如下所示:
pathurl="sites/all/modules/MyModule/includes/treeviewPhpAPI.php";
答案 0 :(得分:1)
如果您直接调用PHP脚本而不是通过Drupal引导(即:页面回调),则需要包含bootstrap.inc
(就像cron.php
正在做的那样)
if (!defined('DRUPAL_ROOT')) {
define('DRUPAL_ROOT', dirname(__FILE__));
chdir(DRUPAL_ROOT);
}
include_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE);
db_set_active('my_external_db');