2015-01-21 5 views
0

아약스 게시물을 통해 json 배열로 생각하는 것을 전달하려고하지만 운이 없습니다. dataType을 "text"로 변경하고 일부 데이터를 내 데이터로 추가하면 제대로 작동하여 내 데이터 형식을 알 수 있습니다.json 배열 데이터 서식 지정

내 PHP 페이지에서 데이터를 덤프 할 때 'null'이 표시됩니다.

이 내 데이터가 게시되기 전에 모습입니다 : 여기

[{"name":"La Sal, UT","type":"city"},{"name":"Utah, US","type":"state"},{"name":"United States","type":"country"}] 

가 생성하는 코드입니다 데이터 : 나는 데이터가 '아무튼한다는 의미가 있다고 가정

var groups=[]; 

    if(town && stateShort){ 
     groups.push({name: town+", "+stateShort, 
       type:"city" 
     }); 
    } 

    if(neighborhood && stateLong){ 
     groups.push({name: neighborhood+", "+stateShort, 
       type:"neighborhood" 
     }); 
    } 

    if(stateLong && countryShort){ 
     groups.push({name:stateLong+", "+countryShort, 
       type:"state" 
     }); 
    } 

    if(countryLong){ 
     groups.push({name:countryLong, 
       type:"country" 
     }); 
    } 

    groups = JSON.stringify(groups); 
    console.log(groups); 

    $(document).ready(function(){ 

     $.ajax({ 
      type: "POST", 
      url: "check_groups.php", 

      data: groups, 
      dataType: 'json', 
      success: function (data) { 
       alert("success"); 
      }, 
      error: function(xhr) { 
      if(xhr.status == 422) { 
       alertValidationErrors(parseErrors(xhr)); 
      } else { 
       alert('An error occurred while processing the request.'); 
      } 
      } 
     });  
    }); 

내가 게시 한 json 객체처럼 보이지는 않지만, json_stringify()는 일종의 잡다한 해결책이 될 것으로 예상됩니다.

제 질문은 json의 형식을 올바르게 바꾸려면 어떻게해야합니까?

도움을 주셔서 진심으로 감사드립니다. 대단히 감사합니다.

... 
data: groups, 

… 
data: {"groups" : groups}, 
… 

에와 PHP에 :

답변

0

변화, 그것을 위해 키를 추가하여 데이터를 전달하려고

$data = json_decode($_POST['groups']); 
+0

덕분에,이 솔루션의 일부! – ambe5960

+0

하지만이 작업을 수행하는 방법을 알고 있기 때문에 어리석은 짓을합니다. 몇 명의 사람들이 같은 기본 오류를 범할 것이라고 생각합니다. 하지만 상관없이이 질문을 떠날거야. – ambe5960