테스트 사이트 - 개발 중인 베타 버전입니다

php에서 ajax 질문 채택완료

kmd2410 4년 전 조회 1,549

</p>

<p><html></p>

<p>    <head></p>

<p>        <script src="<a href="https://code.jquery.com/jquery-3.4.1.min.js"></script>" target="_blank" rel="noopener noreferrer">https://code.jquery.com/jquery-3.4.1.min.js"></script></a></p>

<p>    </head></p>

<p>    <form action="" method="POST"></p>

<p>        <div></p>

<p>            <label for="id">id</label></p>

<p>            <input type="text" name="id" id="id"></p>

<p>        </div></p>

<p>        <div></p>

<p>            <label for="pv">pv</label></p>

<p>            <input type="password" name="pv" id="pv"></p>

<p>        </div></p>

<p>        <div></p>

<p>            <label for="pb">pb</label></p>

<p>            <input type="password" name="pb" id="pb"></p>

<p>        </div></p>

<p>        <div></p>

<p>            <label for="code">code</label></p>

<p>            <input type="text" name="code" id="code"></p>

<p>        </div></p>

<p>        <div></p>

<p>            <label for="email">email</label></p>

<p>            <input type="text" name="email" id="email"></p>

<p>        </div></p>

<p>        <div></p>

<p>            <input type="submit" class="button"></p>

<p>        </div></p>

<p>    </form></p>

<p> </p>

<p><script></p>

<p>        $(function(){</p>

<p>            $(".button").click(function(){</p>

<p>                let values = $("form").serialize();</p>

<p> </p>

<p>                $.ajax({</p>

<p>                    url: "./insert_update.php",</p>

<p>                    type: "POST",</p>

<p>                    data: values,</p>

<p>                    dataType: "json",</p>

<p>                    success: function(response){</p>

<p>                        alert("성공");</p>

<p>                    }</p>

<p>                });</p>

<p>            });</p>

<p>        });</p>

<p>    </script></p>

<p></html></p>

<p>

 

이코드로 넘겼을때 받는 php에서 $id = $_POST['id'];를 해서 받을수가 없는데...

어떻게 해야하는건가요 ㅠㅠ?

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
B
4년 전

</p>

<p><input type="submit" class="button"></p>

<p>↓</p>

<p><input type="button" class="button" value="확인"></p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

k
kmd2410
4년 전
선생님 serialize()로 넘긴 데이터를 insert_unpdate.php에서 $id = $_POST['id'];로 받을수있나요?
제가 받는 방식이 틀린것같아요 ㅠ.ㅠ 작동을안해용
B
BiHon
4년 전
네. 그렇게 받으면 됩니다.
테스트를 위해 질문의 코드에서 최소한만 남긴 코드입니다.
insert_update.php는 확인용으로 추가합니다.

[code]
<html>
<head>
<script src="//code.jquery.com/jquery-3.4.1.min.js"></script>
</head>
<form action="" method="POST">
<div>
<label for="id">id</label>
<input type="text" name="id" id="id">
</div>
<div>
<input type="button" class="button" value="확인">
</div>
</form>
<script>
$(function(){
$(".button").click(function(){
let values = $("form").serialize();
$.ajax({
url: "./insert_update.php",
type: "POST",
data: values,
dataType: "json",
success: function(response){
alert(response.id);
}
});
});
});
</script>
</html>
[/code]

* insert_update.php
[code]
<?php
$data = [ // PHP v5.4 이상 ... 미만은 $data = [ ]; → $data = array( );
'id' => $_POST['id'] ?? '' // PHP v7.0 이상 ... 미만은 간단하게 isset($_POST['id']) ? $_POST['id'] : ''
];
echo json_encode($data, JSON_UNESCAPED_UNICODE);
[/code]
k
kmd2410
4년 전
선생님 너무 감사해요! 해결하였습니다! ^^

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인