ajax表单不会将数据发布到php

时间:2016-06-30 16:45:19

标签: javascript php jquery ajax

在Stackoverflow的帮助下,我正在学习网站设计。最近,我编写了以下代码,用于使用Ajax从HTML表单发送数据。代码清楚地检查错误但发送PHP消息。我使用过ajax google库: http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js

下面给出了Ajax代码。

{{1}}

我查了几个问题&答案,但无法找到正确的答案。请帮我。我要求的是将输入的数据传递给php。

3 个答案:

答案 0 :(得分:0)

使用像这样的Ajax而不是$.post("xxx.xyz/abc.php"

$.ajax({
    url: "xxx.xyz/abc.php",
    type: "post",
    data : {
     name: name, place: place, message: message
   },
    success: function(data){    
         $("#error").append(data); 
    }
});

答案 1 :(得分:0)

在表单提交上调用您的提交功能,并删除您的最后一个条件。成功进行数据验证后,使用ajax方法发布数据。

答案 2 :(得分:0)

我在这里注意到一些事情。

  1. 如果您在表单上使用提交功能,则无法阻止 默认操作。
  2. 你不需要你的最后一个if语句 检查错误并返回false,这将不会发送表单。
  3. 如果发送实际成功,我还建议只发送成功消息,否则发送和错误消息。

    我创建了一个小提琴,向您展示如何使用表单处理问题。如果您没有使用表格,这可能无关紧要。

    截至jquery 3.0 .then()已被删除,转而使用$.done()  应该用它代替成功的回调。

    https://jsfiddle.net/a9m2699s/1/

    这是新的提交方法。注意:它可以进行更多重构,但为了保持接近问题,我们将保留它。

    var sql = require('waf-sql');
        //use port 3306 and do not use SSL
    var dbconn = sql.connect('mysql','192.168.0.21', 'john', 'x54?hsf5x!','arts',3306,false); 
    var rs = dbconn.update("people", {
        name: "smith",
        age: 42
        }, {
            id: 1
        });
    var rs = dbconn.select("*", "people", {
            id: 1
        });
    var row = rs.getNextRow(); // get the first row
    dbcon.close(); // close connection