当前位置: 代码迷 >> JavaScript >> Ajax未提交$ _Post
  详细解决方案

Ajax未提交$ _Post

热度:55   发布时间:2023-06-05 10:20:21.0

我有这段代码,假设是要获取输入字段的值,然后将它们添加到数据库中。 值的收集工作正常,并且插入数据库的工作正常,我在数据发布中遇到问题。 我将其范围缩小到数据:和$ __ POST区域,我不确定我做错了什么。

JS脚本

$("#save_groups").click( function() {

var ids = [];

$.each($('input'), function() {
    var id = $(this).attr('value');
    //Put ID in array.
    ids.push(id);
    console.log('IDs'+ids);
});

$.ajax({        

       type: "POST",
       url: "inc/insert.php",
       data: {grouparray: ids },
       success: function() {
            $("#saved").fadeOut('slow');   
                    console.log('Success on ' + ids);
       }
    }); 


});

PHP部分

<?php
include ('connect.php');

$grouparray = $_POST['grouparray'];

$user_ID = '9';

$sql = "INSERT INTO wp_fb_manager (user_id, group_id) VALUES ($user_ID, $grouparray)";

$result=mysql_query($sql);

if ($result === TRUE) {
    echo "New records created successfully";
} else {
    echo "Error: " . $sql . "<br>" . mysql_error();
}
?>

您不能通过ajax调用发送数组。

首先,使用类似:

var idString = JSON.stringify(ids);

并使用它: data: {grouparray: idString },

在PHP方面:

$array = json_decode($_POST['grouparray']);
print_r($array);
  相关解决方案