2012-02-25 45 views
2

议决 - 参见后的底部Ajax的PHP脚本返回包括错误

嘿大家的第一篇文章,所以我提前道歉,如果格式不那么准确;不过这里是我的问题..

我有一个简单的形式为用户添加电子邮件到数据库。我正在利用ajax提交表单和php来处理(添加到数据库)有效的表单提交。

ajax脚本正确地发送数据 - 我利用萤火虫验证表单数据正在传递 - 而且我验证了在ajax调用中指定的php脚本正确接收数据。

问题出在数据被传回给ajax成功函数。我在php脚本中包含一个包含连接到我的数据库的类,以及过多的数据库函数(运行quires,设置数据库表,关闭数据库连接..等等..)。当ajax成功函数返回数据时,返回的数据中包含php'missing include'错误。

Theories I have that is causing this: 

1)不管什么,当AJAX成功函数返回数据

2.在PHP脚本包括呼叫正在处理)的原因包括呼叫从未被在服务器端处理和正在作为返回字符串

问题:can包含调用可用于我正在使用的方法吗?

希望我已经包含足够的信息,如果不是,请让我知道还需要什么。谢谢你的帮助。 =]

下面是代码:

AJAX SCRIPT:

$.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数据返回的错误:

警告:包含(xxxx/library/database/class_lib_db.ph P) []:未能打开流:在 /home/xxxx/public_html/xxxx/include/module/mailing_list/mailvalidation.php 没有这样的文件或目录 上线77

警告:包括(xxxx/library/database/class_lib_db.php) [function.include]:未能打开流:没有这样的文件或目录 in /home/xxxx/public_html/xxxx/include/module/mailing_list/mailvalidation.php on line 77

Warning:include()[function.include]:开启失败 'xxxx/library/database/class_lib_db.ph p'包含 (include_path ='。:/ usr/lib/php:/ usr/local/lib/php')。上线77

PHP 议决

我已经编辑了包括在PHP脚本调用

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

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

注意 :我从来没有必须参加只有利用AJAX

+0

此错误表示路径'aokcdc/library/database/class_lib_db.php'不存在 – scibuff 2012-02-25 23:54:56

+0

嘿scibuff,谢谢你的回复。我熟悉php解析错误,我已经遇到过很多。不过,我希望这很简单。我已经验证包含文件确实存在。 在实现ajax之前,我使用基本的jQuery提交方法提交了表单,并且我没有包含任何问题..任何其他想法? – 2012-02-26 00:08:04

回答

1

尝试改变路径的包括功能

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

前伦斯我包括与电话“../”如果你正在做一个Ajax请求的“xxxx /包括/模块/ mail_list/mailvalidation.php“,PHP脚本中的include语句实际上指向”xxxx/include/module/mailing_list/xxxx/library/database/class_lib_db.php“