我哪裏有重複的,能夠字段的表單,它產生以下JSON數據:解析Duplicatable窗體的JSON數據到PHP的郵件
{
"mainmember": [
{
"name": "testtest",
"surname": "test",
"id": "8509295266086",
"age": "27",
"gender": "Male",
"townofbirth": "george",
"email": "[email protected]",
"contact": "0112121211",
"passport": "1111111111111",
"postal": "grjiubrwg",
"postal_code": "0010",
"residential": "tytyytyttyytyt",
"residential_code": "4422"
}
],
"dependant1": [
{
"name": "testDUP",
"surname": "testDUP",
"id": "4802235040081",
"age": "64",
"gender": "Male",
"townofbirth": "tehjte",
"cell": "4774811845",
"email": "testDUP",
"passport": "8202255133088",
"relationship": "spouse"
}
],
"dependant2": [
{
"name": "testDUP2",
"surname": "testDUP2",
"id": "1111111111111",
"age": "45",
"gender": "F",
"townofbirth": "knysnasw",
"cell": "0000000000",
"email": "testDUP2",
"passport": "2222222222222",
"relationship": "inlaw"
}
]
}
現在重複的,能夠字段是家屬,在這JSON有2個依賴,但重複增加到「依賴3,依賴4,依賴5」。
目前,當我提交,發送給PHP我可以指望的家屬:
<?php
$json = $_POST['parameters'];
$json_string = stripslashes($json);
$data = json_decode($json_string, true);
$datasetCount = count($data); // returns count of array items of any array
echo "<h1>There are $datasetCount Dependants</h1>";
$i = 0;
foreach ($data as $each_dep) {
$i++;
echo "<h2>Dependant $i</h2>";
while (list($key, $value) = each ($each_dep)) {
echo "$key: $value<br />";
}
}
?>
和jQuery的發送功能,我使用的是:
jQuery('#submit').click(function(){
jQuery('div[class*="mainmember"]').each(function(k, v){
mainmember = {};
mainmember['id'] = '';
$(v).find('.id').each(function(){
mainmember['id'] += $(this).val();
});
mainmember['age'] = '';
$(v).find('.age').each(function(){
mainmember['age'] += $(this).val();
});
mainmember['gender'] = $(v).find('.gender').val();
result['mainmember'] = [mainmember];
});
jQuery('div[class*="dependant"]').each(function(k, v){
dep_counter++
dependants = {};
result['dependant'+dep_counter] = [dependants];
dependants['id'] = '';
$(v).find('.id').each(function(){
dependants['id'] += $(this).val();
});
dependants['age'] = '';
$(v).find('.age').each(function(){
dependants['age'] += $(this).val();
});
dependants['gender'] = $(v).find('.gender').val();
});
var jsonData = JSON.stringify(result);
console.log(jsonData);
});
我只是無法得到其他數據,如名字,姓氏等 我需要像這樣解析它到一封電子郵件:
主要成員: 詳細信息
從屬2: 細節
從屬3: 細節
任何幫助不勝感激。
你想做什麼?你能展示一個包含重複的例子嗎? –
試圖清除它更多..希望它有幫助 –
在你的形式,有多少'mainmember'?只有一個,還是很多? –