2012-06-16 2 views
13

사용자가 'generate'요소를 클릭하면 'serializeData'양식의 데이터가 js에서 직렬화됩니다. 이 문자열은 loadTemplate 함수에 전달되며, POST 함수는 다른 변수를 가진 문자열을 처리하기 위해 PHP 스크립트에 전달합니다. 문자열로 PHP에서 볼 수 있듯이PHP에서 JS 직렬화 된 변수 문자열을 unserializing

은 내가 무엇을 찾고 있어요 것은 데이터를 얻기 위해 JS의 PHP에서 문자열이나 우수 사례를 unserialize하는 방법입니다, 여기에 serilized 데이터 출력의 예는 다음과 같습니다 -

입력 1 = 회의 & 입력 2 = 선택 + 날짜 & INPUT3 = 입력 + 텍스트 & 직렬화 폼 데이터 userData에 변수에 loadTemplate 함수 PHP로 전달

MISSING 입력 4 = NUMBER +.

기능 : -

$("#generate").click(function() { 
    if (eCheck == true) { 

     var templateData = $("#serializeData").serialize(); 
     var templateID = $("#serializeData").attr("name"); 

      loadTemplate(this, templateID, 3, templateData)   
    } 
    return false; 
}); 


function loadTemplate(obj, cat, call, userData) { 
userData = typeof userData !== "undefined" ? userData : null; // Set userData to null if undefined. 
var onSuccess = "#right"; 

if (call == 1) { 
    onSuccess = "#left"; 
     switchButton(obj); 
      $("#content").hide(); 
      $("#right-content").text(""); 
} 

$("#loading").show(); 

$.ajax({ 
    type: "POST", 
    url: "./scripts/load.php", 
    data: { id : cat, call: call, userData: userData }, 
    cache: false, 
     success: function(html){ 
     $(onSuccess + "-content").html(html); 

     if (onSuccess == "#left") { 
      $("#content").fadeIn(500); 
     } 
      $("#loading").fadeOut(500); 
      resizeAll(); 
    } 
}); 

} 

어떤 생각?

답변

35

당신은 parse_str를 사용할 수 있습니다 더 대답에 약간을 내 주면서

$values = array(); 
parse_str($_POST['userData'], $values); 
echo $values['input1']; //Outputs 'meeting' 
+0

브릴리언트 감사 모두,이 대답을했다. 고마워. – KryptoniteDove

4

나는 parse_str이 필요하다고 생각합니다.

관련 문제