Я пытаюсь взаимодействовать с внешней базой данных в другом php-файле из файла my_module.module, но получаю эту ошибку:
Call to undefined function db_set_active()
Я попробовал это:
drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE);
db_set_active('my_external_db');
но тщетно.
Любая помощь, пожалуйста
Редактировать:
Мой файл .php назывался jQuery.ajax как URL, как показано ниже:
pathurl="sites/all/modules/MyModule/includes/treeviewPhpAPI.php";
Если вы вызываете свой 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');
Других решений пока нет …