1

我有一个关于如何将.postjquery 中传递的数组变量的值获取到我的 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 个数组怎么办

是否知道如何获取它或如何将其传递给单个数组。

提前致谢。

4

1 回答 1

3

您可以使用JSON.stringify(data);将它们转换为 JSON 并像这样在服务器端对其进行 prase;$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);
});

和你的服务器端ccode:

<?php
$mindate = json_decode($_POST['minDate']);
$hourswork = json_decode($_POST['hoursWork']);
$empid = json_decode($_POST['empId']);
foreach($mindate as $k=>$val)
{
    $date = $val;
    $work =$hourswork[$k];
    $id =$empid[$k];
    //...
}
?>
于 2013-01-14T07:43:27.037 回答