[英]php jquery Fatal error: require(): Failed opening required
我想使用基于groupId的数据库创建网格。 目前,我所有的东西都调用相同的查询。 我的问题是当我选择一个组并使用jQuery
发布到我的Gateway.php
文件时。 我创建了一个psuedo-MVC
设置。 我在Controller,Models和Views中分离了3个目录。 从这个php文件中,我不断收到这些错误消息:
警告:require(Membership / Controllers / Members.php):无法打开流:第11行的H:\\ xampp \\ htdocs \\ HelloWorld \\ Membership \\ Includes \\ Gateway.php中没有此类文件或目录
致命错误:require():无法在H:\\ xampp \\ htdocs \\ HelloWorld \\ Membership \\ Includes \\ Gateway中打开所需的'Membership / Controllers / Members.php'(include_path ='.; H:\\ xampp \\ php \\ PEAR') .php行11
因此,我尝试了几件事。 第一,我将调用移至index.php,效果很好。 但是从jQuery
调用来看,它给了我错误。
我创建了另一个带有功能的php文件。 我从模型和视图中移动了代码。 我让它返回带有结果的表的html。 有用。
有人可以给我指出一个向类函数进行jQuery
ajax调用的示例吗? 或给出一些方向。
Members.js
var Members = {
Display: function(groupId) {
var pData = {
action: 'GetMembers',
groupId: groupId
};
$("#crGroups").empty();
$("#crGroups").append("Getting Members..." );
$.ajax({
url: "Membership/Includes/Gateway.php",
type: "POST",
data: pData,
cache: false,
success: function (data, status, xhr) {
try {
var members = $.parseJSON(data);
if (members !== undefined) {
$("#crGroups").empty();
$("#crGroups").append(members.html);
} else {
$("#crGroups").empty();
$("#crGroups").append(data);
}
} catch (err){
$("#crGroups").empty();
$("#crGroups").append(data + "<br><br>Error description: " + err.message);
}
}
});
}
}
Gateway.php
<?php
$action = $_POST['action'];
$groupId = $_POST['groupId'];
$data = array();
// Gateway for processing
switch($action) {
case 'GetMembers' :
require 'Membership/Controllers/Members.php';
$member = new MembersController();
//include 'Members.php';
$data["status"] = "success";
$data["html"] = $member->GetMembers();
//$data["html"] = getMembers();
break;
case 'AddMember' :
$page = 'Add Member';
break;
case 'page3' :
$data["status"] = "success";
break;
case 'page4' :
$data["status"] = "success";
break;
default :
$data["status"] = "failure";
}
echo json_encode($data);
?>
只是改变
require 'Membership/Controllers/Members.php';
至
require $_SERVER['DOCUMENT_ROOT'].'HelloWorld/Membership/Controllers/Members.php';
谢谢你们的建议。 有效。 我确实已将其放在其他文件中,但是它解决了问题。 我想我将定义可以在所有文件中使用的位置,并对其进行一次更改。 再次感谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.