Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用ajax将联系人详细信息发送到数据库_Javascript_Ajax - Fatal编程技术网

Javascript 使用ajax将联系人详细信息发送到数据库

Javascript 使用ajax将联系人详细信息发送到数据库,javascript,ajax,Javascript,Ajax,我有一个页面,允许用户从他们的移动设备中选择联系人姓名和详细信息,然后我尝试使用ajax将这些详细信息添加到mysql数据库中 从设备获取联系人详细信息的原始代码 function select_a_contact() { intel.xdk.contacts.chooseContact(); } document.addEventListener('intel.xdk.contacts.choose', function(evt){

我有一个页面,允许用户从他们的移动设备中选择联系人姓名和详细信息,然后我尝试使用ajax将这些详细信息添加到mysql数据库中

从设备获取联系人详细信息的原始代码

 function select_a_contact()
    {
        intel.xdk.contacts.chooseContact();
    }

    document.addEventListener('intel.xdk.contacts.choose', function(evt){
        if (evt.success == true)
        {
            var contactID = evt.contactid;

            //this function retrieves information of a contact based on its id.
            var contactInfo = intel.xdk.contacts.getContactData(contactID);

            var firstName = contactInfo.first;
            var lastName = contactInfo.last;
            var phoneNumbers = contactInfo.phones;
            var emails = contactInfo.emails;
            var address = contactInfo.addresses;

            alert(firstName + lastName);
        }
        else if (evt.cancelled == true)
        {
            alert("Choose Contact Cancelled");
        }
    });
这是我修改过的代码,我在其中添加了一些代码,用于将联系人详细信息发送到php页面。当我选择一个联系人时,我没有收到任何错误,但是警报不会触发,所以我假设我的代码不起作用。如果我在表单环境中使用ajax代码,那么它工作得非常好,我尝试了几种不同的方法编写它,但是ajax代码似乎没有触发

 function select_a_contact()
    {
        intel.xdk.contacts.chooseContact();
    }

    document.addEventListener('intel.xdk.contacts.choose', function(evt){
        if (evt.success == true)
        {
            var contactID = evt.contactid;

            //this function retrieves information of a contact based on its id.
            var contactInfo = intel.xdk.contacts.getContactData(contactID);

            var firstName = contactInfo.first;
            var lastName = contactInfo.last;
            var phoneNumbers = contactInfo.phones;
            var emails = contactInfo.emails;
            var address = contactInfo.addresses;

            $.ajax({
            type: "POST",
            url: "http://www.domian.co.uk/app/build.php",
            data: {
            var firstName = contactInfo.first;
            var lastName = contactInfo.last;
            var phoneNumbers = contactInfo.phones;
            var emails = contactInfo.emails;
            var address = contactInfo.addresses;
            },
            success: function(){
             alert(firstName);
            }
            });

            alert(firstName + lastName);
        }
        else if (evt.cancelled == true)
        {
            alert("Choose Contact Cancelled");
        }
    });       

您的数据部分是错误的。请尝试以下方法:

data: {
    firstName: firstName,
    lastName: lastName,
    phoneNumbers: phoneNumbers,
    emails: emails,
    address: address
},
。。。或者

data: {
    firstName: contactInfo.first,
    lastName: contactInfo.last,
    phoneNumbers: contactInfo.phones,
    emails: contactInfo.emails,
    address: contactInfo.addresses
},

使用第二种方法可以去掉所有新的变量声明,稍微清理一下代码。从技术上讲,您不需要它们。

谢谢,我试过了,但它同样不会触发警报或传递信息。您需要包含build.php的代码。问题可能就在那里。