我已经使用phonegap / android从远程服务器(使用localhost)使用jsonp从Db成功下载了数据,现在尝试使用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;
        });
    });
});


有什么想法我做错了吗?
还可以在浏览器中用于测试目的吗?

最佳答案

我的调试方式:

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

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

http://localhost/post_to_server/save.php


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

一旦确定了ajax调用中发布的内容,就可以从那里继续进行。

09-25 17:57
查看更多