Ajax php脚本返回include错误


Ajax php script returning include error

已解决-参考后的底部

嘿,大家先发帖子,所以如果格式不太准确,我提前道歉;不过,这是我的问题。。

我有一个简单的表单,可以将用户的电子邮件添加到数据库中。我正在使用ajax提交表单,并使用php处理(添加到DB)有效的表单提交。

ajax脚本正确地发送了数据——我正在使用firebug来验证传递的表单数据——我已经验证了ajax调用中指定的php脚本是否正确地接收了数据。

问题在于传递回ajax成功函数的数据。我在php脚本中有一个include调用,其中包括一个用于连接到我的数据库的类,以及大量的数据库函数(运行quires、设置数据库表、关闭数据库连接等)。当ajax成功函数返回数据时,返回的数据中会包含php"missing-include"错误。

Theories I have that is causing this: 

1.)无论出于何种原因,当ajax成功函数返回数据时,php脚本中的include调用正在处理中

2.)include调用从不在服务器端处理,并且充当返回字符串

问题:include调用可以在我使用的方法中使用吗?

希望我已经包含了足够的信息,如果没有,请告诉我还需要什么。谢谢你的帮助

这是代码:

AJAX脚本:

 $.ajax({
    type: "POST",
    url: "xxxx/include/module/mailing_list/mailvalidation.php",
    data: formData,
      beforeSend: function(){
         //validation code for form''
      },
      success: function(data){
        alert("successful submissio: " + data);
      }
  )};

PHP脚本:

include("xxxx/library/database/class_lib_db.php");
cleanPost();
if (userInDB){
    insertUserInfo();   
    echo "You ajax post was submitted " . $_POST['first_name'] . " " . $_POST['last_name'];
} else {
    echo "Your already registred " . $_POST['first_name'] . " " . $_POST['last_name'];  
}

以下是ajax数据中返回的错误:

警告:include(xxxx/library/database/class_lib_db.php)[function.include]:无法打开流:没有这样的文件或目录在里面/home/xxxx/public_html/xxxx/include/module/mailing_list/mailvalidation.php在线77

警告:include(xxxx/library/database/class_lib_db.php)[function.include]:无法打开流:没有这样的文件或目录在里面/home/xxxx/public_html/xxxx/include/module/mailing_list/mailvalidation.php在线77

警告:include()[function.includ]:打开失败'xxxx/library/database/class_lib_db.php'用于包含(include_path='.:/usr/lib/php:/usr/local/lib/php')/home/xxxx/public_html/xxxx/include/module/mailing_list/mailvalidation.php在线77

已解决

我在php脚本中编辑了include调用

之前:include("xxxx/library/database/class_lib_db.php");

之后:include("../../../../xxxx/library/database/class_lib_db.php");

注意:我从未用'../'引用过我的include调用在仅使用ajax 之前

尝试将include函数中的路径更改为

include("../../../library/database/class_lib_db.php");

如果您向"xxxx/include/module/mailing_list/mailvalidation.php"发出ajax请求,则php脚本中的include语句实际上指向"xxxx/include/module/meiling_list/xxxxx/library/database/class_lib_db.php"