使用ajax创建迭代的SQL`INSERT`语句

时间:2014-08-22 18:48:01

标签: javascript php mysql sql ajax

我试图使用ajax在javascript循环(requestAnimFrame)中多次调用insert语句,但只会在表中输入一个条目。

Ajax调用(mainpage.php):

            $.ajax({
                    type: "POST",
                    url: "ajaxPHP.php",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function(msg) {
                    },
                    error: function(err) {
                       // alert(err.toString());
                        if (err.status == 200) {
                        }
                        else { alert('Error:' + err.responseText + '  Status: ' + err.status); }
                    }
                });

我的插入声明(inserts.php):

$con = mysqli_connect("localhost", "root", "", "database");
$sql = "INSERT INTO testing values( '$x1', '$x2', '$x3','$x4', '$x5', '$x6', '$x7', '$x8', '$x9', '$x10', '$x11')";
mysqli_query($con, $sql);
mysqli_close($con);

注意:ajax块在应该(到达)时运行,但insert语句不插入新行,而是覆盖第一行值。

非常感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

我的程序中的错误不是代码本身,而是数据库结构。选择了不正确的Primary Key,这导致新的插入语句覆盖了前面的行。