如何将jquery中.post传递的数组数据导入php?

时间:2013-01-14 07:35:21

标签: php jquery

关于如何将jquery中.post传递的数组变量值传入我的php页面,我遇到了一个问题

这是我的jquery代码:

minDate = [];
hoursWork = [];
empId = [];
        $('.minDate').each(function() { 
            minDate.push($(this).val());
        });

        $('.hoursWork').each(function() { 
            hoursWork.push($(this).val());
        });

        $('.empId').each(function() { 
            empId.push($(this).val());
        });

            $.post('rtInsert.php', { minDate: minDate, hoursWork: hoursWork, empId: empId }, function(data) { 
        alert(data);
    });

如何在rtInsert.php

中获取传递的数据

我试过

$minDate = $_POST['minDate'];
$empId = $_POST['empId'];
$workHours = $_POST['hoursWork'];

现在我将如何获得数组的单个值,因为所有3个变量都是数组

我所知道的是使用foreach()的单个数组,但是 如果传递了3个数组怎么办

有什么想法我能得到它或我怎样才能传入单个阵列。

先谢谢。

1 个答案:

答案 0 :(得分:3)

您可以使用JSON.stringify(data);将它们转换为JSON并在服务器端解析它; $data = json_decode($json);

您的代码将变为:

var minDate = [];
var hoursWork = [];
var empId = [];
$('.minDate').each(function() { 
    minDate.push($(this).val());
});

$('.hoursWork').each(function() { 
    hoursWork.push($(this).val());
});

$('.empId').each(function() { 
    empId.push($(this).val());
});

$.post('rtInsert.php', { minDate: JSON.stringify(minDate), hoursWork: JSON.stringify(hoursWork), empId: JSON.stringify(empId) }, function(data) { 
    alert(data);
});

您的服务器端代码: