如何将序列化的jquery数组提取到php页面?

时间:2011-03-07 17:29:38

标签: php jquery

继承人我的代码我已经序列化checboxes,我希望它通过ajax传递到php页面。请注意,我没有使用表格。我不能使用表格。我在按钮上使用click事件来传递值。

$('#res-button').click(function (){
    var pid = $('#pid');
    var name_res= $('#name_res');
    var email_res= $('#email_res');
    var contact_res= $('#contact_res');
    var room_id=$('[name=rescheck[]]:checked').serialize().replace(/%5B%5D/g,'[]');

    alert(room_id);

$.ajax({
                    type: "POST",
                    url: "reservation-valid.php",
                    data: {name_r:name_r, email_r:email_r,contact_r:contact_r,prop_id:p_id,cvalue:room_id},
                    success: function(data) {
                    //some codes here
                    });

                    }
                }); 
});

我警告到room_id的结果就是这个 - “rescheck [] = 1& rescheck [] = 2& .....”所以我知道我的序列化工作正常,但我不能让它到php插入我的数据库中的ID。

这是我的PHP代码:

$c_array=$_POST['cvalue'];

    foreach($c_array as $ch)
    {
    $sql=mysql_query("INSERT INTO reservation VALUES('','$prop_id','$ch','$name_r','$contact_r','$email_r','')");
    }

2 个答案:

答案 0 :(得分:0)

更改你的js:

$.ajax({
                    type: "POST",
                    url: "reservation-valid.php",
                    data: {'name_r':name_r, 'email_r':email_r,'contact_r':contact_r,'prop_id':p_id,'cvalue':room_id},
                    success: function(data) {
                    //some codes here
                    });

                    }
                });

正在覆盖您的值名称

答案 1 :(得分:0)

我建议您使用serializeArray

来使用JSON方法 在php中你应该使用JSON_DECODE从$ .ajax调用中接收数据

pd:抱歉我的英文。