AJAX 전송이 안되요~! 어디가 틀린건지 알고싶어요! 채택완료
유우니얌
11년 전
조회 6,692
안녕하세요..ajax 란 기술을 저도 이제 써보고싶다는 생각에. 욕심내어 인터넷 둘러보면서
답변 주시면 오늘 밤 행복한일이 ^^ㅎㅎ
한번 테스트를 해봣는데요..
결과는 실패입니다.. 당연한거죠 ㅎㅎ
그래서, 어디가 틀린건지.. 선배님들한테 조언좀 듣고자, 틀린부분 알려주시고,
바른길로 인도해주셧으면합니다!
우선 현재, 테스트한 소스 내용은 이렇습니다.
input 체크 박스가 있고, 이 체크박스를 선택하면, 체크 된값 1 또는 아닌값 0을 바로 다이렉트로 서버에
올려주고싶은데요.
소스는 이렇습니다.
----------리스트-------php--
</div><div><tr> </div><div>중간생략 </div><div><td> </div><div><input type="hidden" name="ch_no[<?php echo $i ?>]" value="<?php echo $row['ch_no'] ?>"> </div><div> <td class="ch_stat"> //////아이디값</div><div><input type="checkbox" name="ch_stat[<?php echo $i ?>]" value="1" class="ch_stat" id="ch_stat_<?php echo $i ?>" <?php echo $row['ch_stat']==1?'checked':''; ?>> ///////// 변경할 값 </div><div></td> </div><div>중간생략</div><div>
-----------스크립트---
</div><div>$("input.ch_stat").click(function(){</div><div>
</div><div> var chk = $(this).attr('checked')?true:false;</div><div>
</div><div> var ch_stat = 0; // 실제 변경할 변수 값</div><div> </div><div> var ch_no = $(this).parent().parent().find("input[name=ch_no]").val(); // 아이디 값</div><div>
</div><div>if(chk==true){</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>ch_stat=1;<span class="Apple-tab-span" style="white-space:pre"> </span>// 실제 변경할 변수 값</div><div>}</div><div>else { ch_stat = 0;} // 실제 변경할 변수 값</div><div> </div><div>$.ajax({</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> type : 'POST', </div><div><span class="Apple-tab-span" style="white-space:pre"> </span> url : '/adm/channel_list_ajax_update.php', </div><div><span class="Apple-tab-span" style="white-space:pre"> </span> data : {</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>"ch_no":ch_no, // 실제 변경할 변수 값의 아이디</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> "ch_stat":ch_stat // 실제 변경할 변수 값</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> },</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> cache: false,</div><div> async: false, </div><div><span class="Apple-tab-span" style="white-space:pre"> </span> success: function(data) {</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> <span class="Apple-tab-span" style="white-space:pre"> </span>alert('성공');</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> },error:function(){</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> <span class="Apple-tab-span" style="white-space:pre"> </span>alert('fail');</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> } <span class="Apple-tab-span" style="white-space:pre"> </span></div><div>});</div><div>
</div><div>});
</div><div>
channel_list_ajax_update.php
</div><div>
</div><div> $sql = " update channel </div><div> set </div><div> ch_stat = '{$_POST['ch_stat']}' </div><div> where ch_no = '{$_POST['ch_no']}' "; </div><div> sql_query($sql); </div><div>
</div><div>
위와 , 아래와 같은...소스인데요.. 흠 ....일단 작동시 db 변동은 없구요.
그냥 ajax succes alert 성공만 무의미 하게 계속 뜨네요..
"ch_no":ch_no, // 실제 변경할 변수 값의 아이디
"ch_stat":ch_stat // 실제 변경할 변수 값
alert를 ch_no 의 값만
ch_stat 의 값이 정상적으로 alert 되는것은 확인했는데요..
이 값이,
sql update 저 변수 안에 들어가질 않는건가요?
무언가 하나를 더 해줘야하는건가요!?
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
11년 전
우선은 success: function(data) { 이거 다음 줄에 alert(data); 찍어 보세요.
그리고 channel_list_ajax_update.php 이 파일이 어떤 건지는 모르겠지만 sql_query라는 함수를 실행할 수 있게 include는 다 되어 있는 건가요?
디비 접속이랑 이런 부분두요.
가장 먼저 alert(data)를 찍어 보시고 그 다음엔 channel_list_ajax_update.php 페이지에서 echo $sql을 하신 후 이걸 또 alert으로 찍어 보세요.
그럼 에러가 어떤 건지 대충 나와요.
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
유우니얌
11년 전
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
우선.. 말씀하신것처럼 alert data 값을 찎어보니, 빈 alert 창이 뜹니다..
channel_list_ajax_update.php 는 실제 쿼리문 ???보낼 파일 이라고해야될가요..........
상단에 common.php 파일을 넣어둿씁니다!
우와,............................마지막에... echo $sql .이..정말 많은 도움이 되엇어요.......해결되었습니다..
사랑합니다!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!