Phonegap Android上传到远程数据库失败

时间:2013-11-27 13:32:21

标签: php android mysql cordova

使用phonegap / android我已经使用来自远程服务器的jsonp成功从Db下载数据(使用localhost)现在尝试使用jquery / ajax 上传数据。 进程似乎正在运行,但没有上传数据(即数据未出现在MySql Db中) 我使用localhost作为Db进行测试。 代码::

**save.php**
<?php
$con=mysql_connect("localhost","root","","sean") ;
// Check connection
if (mysqli_connect_errno())
 {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
 }

$sql="INSERT INTO contacts(id, cusname, custaddress)
VALUES
('$_POST[id]','$_POST[cusname]','$_POST[custaddress]')";

if (!mysql_query($sql, $con)) {
        die('Error: ' . mysql_error());
} else {
        echo "Comment added";
}
mysql_close($con);
?>

**post.js**
$(document).bind('deviceready', function(){
    $(function(){
        $('form').submit(function(){

            var postData = $(this).serialize();

            $.ajax({
                type: 'POST',
                data: postData,
                //change the url for your project
                url: 'http://localhost/post_to_server/save.php',
                success: function(data){
                console.log(data);
                alert('Details successfully added');
                },
                error: function(){
                    console.log(data);
                    alert('There was an error adding details');
                }
            });

            return false;
        });
    });
});

任何想法我做错了什么? 这也应该在浏览器中用于测试目的吗?

1 个答案:

答案 0 :(得分:0)

我的调试方式:

在chrome开发者控制台中,检查ajax调用的响应和请求数据。它会告诉你会发生什么。

您将看到链接(如果ajax调用成功)

http://localhost/post_to_server/save.php 

在Chrome开发者控制台的“网络”标签中(即使使用FF)。单击该链接,您可以检查发布到脚本的内容以及数据库发生的情况。

一旦你确定了ajax电话中发布的内容,就可以从那里开始。