【发布时间】:2015-04-16 13:56:04
【问题描述】:
我在发送 jquery 帖子后尝试调用 db_update(),所以我需要包含 drupal_bootstrap 才能使用 Drupal 函数,这是我的代码:
MyModuleAPI.php
if (!defined('DRUPAL_ROOT')) {
define('DRUPAL_ROOT', $_SERVER['DOCUMENT_ROOT']. 'mysite');
chdir(DRUPAL_ROOT);
}
include_once(DRUPAL_ROOT.'/includes/bootstrap.inc');
drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE);
function set_server($host,$port){
db_update('server')...
->execute();
...
}
$query = isset($_POST['query']) ? $_POST['query']: null;
$params = isset($_POST['params']) ? $_POST['params']: null;
switch ($query)
{ case "set_server" :
...
set_server($host,$port);
break;
}
MyModuleAjax.js
function ajax_set_server(serverHost,serverport){
var pathUrl="path/to/includes/MyModuleAPI.php";
jQuery.ajax({
type: "POST",
url: pathUrl,
data: {query: "set_server", params:[serverHost,serverport]},
success: function (response) {
console.log("set server resp "+response);
return false;
}
});
}
我的问题是发送请求时收到的:
POST http://localhost/path/to/includes/MyModuleAPI.php 500 (Service unavailable (with message))
我不知道问题是由于包含引导程序还是在那里已经合法。请帮忙。
【问题讨论】:
-
使用浏览器
developer tools->network选项卡并查找该请求 -response preview输出是什么?我猜有一个 php 错误,并且提到的输出将帮助您找到错误。 -
@OfirBaruch 很有帮助,我现在收到明确的错误消息,谢谢
-
如果我把它写成答案,你会接受吗?或者您希望我也帮助您处理错误消息?
-
没关系,因为我收到了明确的错误消息,我可以修复它。谢谢@OfirBaruch,你可以写一个我会接受的答案。
标签: php jquery twitter-bootstrap drupal-7