자바스크립트의 serialize()와 같은 결과 나오는 PHP의 함수 질문
본문
AJAX로 값을 보낼때 FORM의 값들들 serialize() 함수 이용해서 보내자나요~
예를 들어 "아크릴" 문자열은 serialize()를 거치면 "1%7C%EC%95%84%ED%81%AC%EB%A6%B4" 이렇게 나오는데요.
PHP로 "아크릴"을 "1%7C%EC%95%84%ED%81%AC%EB%A6%B4" 이런 결과 얻으려면 어떻게 해야 할까요?
urlencode() rawurlencode() 를 이용하면 "%EC%95%84%ED%81%AC%EB%A6%B4" 이렇게 나오네요~
자바스크립트의 serialize()와 같은 결과를 PHP로 얻는 방법이 궁금합니다.
답변 2
<script>
function insert_tag()
{
$.ajax({
url: "aaa.php",
type: "POST",
data: {
ssd: "yes",
data: $("#form_insert").serialize()
},
dataType: "JSON",
success: function (jsonStr) {
$("#result1").html(jsonStr['back_message']);
}
});
}
</script>
<form id="form_insert">
<input type="text" name="f1" value="a"/>
<input type="text" name="f2" value="b"/>
<input type="text" name="f3" value="c"/>
<input type="text" name="f4" value="d"/>
<div onclick="insert_tag();"><b>OK</b></div>
<div id="result1">...</div>
</form>
이렇게 보낸다고 하면
받아주는 .php 파일에서
<?php
if(isset($_POST['data']))
{
parse_str($_POST['data'], $searcharray);
$data = array(
"back_message" => $searcharray['f1']
);
echo json_encode($data);
}
?>
!-->!-->
제가 질문을 잘못하였네요.
해결하였습니다.
답변을 작성하시기 전에 로그인 해주세요.