2013-01-14 67 views
1

我有一個問題關於如何獲得通過.post jQuery中傳遞的數組變量的值到我的PHP頁面如何獲取通過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']; 

現在我將如何獲得個人v數組,因爲所有的3個變量的ALUE是一個數組

我所知道的是使用foreach()但 單一陣列中如果有3個陣列通過

有沒有什麼想法,我怎樣才能得到它或如何我傳入單個數組。

在此先感謝。

+0

如果您不能使用'$ _ POST [ '嗒嗒']',嘗試['的file_get_contents (「php:// input」)'](http://php.net/manual/en/wrappers.php.php#refsect2-wrappers.php-unknown-unknown-descriptiop) –

回答

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); 
}); 

而且你的服務器端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]; 
    //... 
} 
?> 
+0

謝謝你的想法先生。這就是我正在尋找的! – Keydi

相關問題