자바스크립트 변수를 php 변수로 넘어가는 과정에 ajax로 해보았는데요.
<script language="JavaScript"> 생략..... if(today < start_d_day && start_days < end_d_day){ 생략..... return; }else if(start_d_day <= today && today <= end_d_day) { document.getElementById('counter_sale').innerHTML = " 상품 종료 남은시간 : " + end_daysRound + dy + end_hoursRound + hr + end_minutesRound + min + end_secondsRound + sec; newtime = window.setTimeout("reverse_counter();", 1000); $.ajax({ type: "POST", url: "주소", data: {a:test, b:"kin"}, success: function(msg){ }, error : function(){ } }); return; }else{ 생략....}</script> <? echo "<script>alert('$test')</script>"; ?>
소스보시면 ajax로 통해서 자바스크립트 변수를 php 안에 변수로 가져올라고 하는데 ㅠ,ㅠ
이게 잘 안되네요 ㅠ,ㅠ
무엇이 틀린거지 ㅠ,ㅠ ajax는 처음 사용 해보는거랑 많이 해깔리네요 ㅠ,ㅠ
고수님들 부탁드립니다. 왜 $test에 아무것도 없는거죠?
답변 2개 / 댓글 1개
php에서 사용하는 ajax를 잘못 이해하신거 같아요 ㅎㅎ
php는 jsp랑은 다르게 페이지의 리로딩이 없이 php의 변수를 변경할 수 없어요.
그리고 지금 사용하신 ajax는 url:주소 페이지에서 data:{a:test,...}이렇게 넘겨준 데이터를 이용하여 페이지를 처리하고,
출력된 값을 가지고 원하는 위치에 넣어주는거에요.
$.ajax({
type: "POST",//값을 넘겨줄 타입. 받을때는 a,b로 보냈으니 $_POST['a'], $_POST['b']이렇게 받으시면 되죠
url: "주소",//넘겨준 값을 처리할 페이지
data: {a:test, b:"kin"},//위에 test라는 변수 선언이 없는데... 넘겨줄 데이터의 네임과 데이터값 문자열은 무조건 ''나 ""를 붙여야해요 javascript의 기본이죠...
success: function(msg){//데이터를 넘겨주는 것이 성공했을시 출력되는 데이터 여기에 적으신 msg가 처리 완료후 출력되는 데이터에요
$("#testarea").appand(msg); $("#testarea").html(msg);//이런식으로 데이터를 지정한 위치에 넣어주는게 주된 사용법이에요. },
error : function(){//데이터를 넘겨주는게 실패했을시 실행할 펑션이에요.
}
});
return;
이렇게 쓰시는 거랍니다...
$test가 어디에서 선언된 변순가요?
혹시 data: {a:test, b:"kin"}, 여기에 test 저건가요?
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.