write.skin.php에서 버튼으로 다른 지정 게시글의 여분필드 변경하고 싶습니다. (ajax)
공지사항 글이 1개 있구요, 거기에서 여분필드 1개를 숫자배열로 받아서 쓰려고 합니다.
그런데 write.skin.php 페이지에서 <글을 굳이 쓰지 않더라도> 이 배열 내의 숫자를 증가, 감소시킨 걸 저장해 접속자들의 전체적인 항목 선호도를 좀 알아보고 싶어요.
ajax라는 걸 알았고, 어느정도 코드도 짜봤습니다만 공부가 부족해서인지 한참 더 가야할 것 같습니다..
배열을 변경할 때 ajax로 통신해야 하는데 그걸 어찌해야할 줄 몰라서 안절부절하고 있습니다
혹시 도움을 받을 수 있을까요?
$totalLike = "select count(*) cnt from 게시판이름 where wr_id = '공지사항글아이디' and wr_7 = 'wr_7'";
$row = sql_fetch($totalHeart);
$like = @explode("|",$row);
이렇게 쿼리로 다른 게시글의 여분필드 받아와서 배열로 만드는 것까진 했습니다.
<div class='likes'>
<input id='like1' type='button'>1번 좋아요</input>
<input id='like2' type='button'>2번 좋아요</input>
<input id='like3' type='button'>3번 좋아요</input>
</div>
항목들의 좋아요 버튼은 이렇게 만들었고요
$(document).on('click', 'input[id*=like]', function(){
$.ajax({
type: 'post',
url: '무슨 주소를 넣어야할지 모르겠습니다...',
data: {
데이터는 이미 위에서 array로 받아왔는데 어떻게 해야하나요?
},
success: function (펑션 이름)
{
여기에서 array의 해당 번째의 항목을 +1해주면 될 것 같습니다...
}
});
});
혹시 이렇게 진행해나가면 가능할까요?ㅠㅠ
답변 2개 / 댓글 3개
내용은 복잡해서 잘이해가 가지 않지만
$(document).on('click', 'input[id*=like]', function(){
$.ajax({
type: 'post',
param:'send=mbid&like=1',
url: '받는쪽.php?param 도 같이 보내요',
data: {
php 에서 처리된 내용을
if(data) {
값이 있으면 처리
여기서 array +1 해주세요.
}else{
없으면 처리 못함
}
},
success: function (펑션 이름)
{
여기에서 array의 해당 번째의 항목을 +1해주면 될 것 같습니다...
}
});
});
위 흐름처럼 작업하시면 됩니다.
한번 해보시면 쉽게 이해하실것 같습니다.
답변에 대한 댓글 1개
혹시 내놓고자 하는 결과물이 어떻게 되시나요??? 죄송하지만 저도 이해가 잘 안가네요 ㅠㅠ
답변에 대한 댓글 2개
그 투표를 회원들이 해당 게시판에 글쓰러 들어갔을 때에만(write.skin.php 파일) 투표할 수 있게 하려고 합니다ㅠㅠ
클릭 한 번으로 공지사항 여분필드 해당 투표 항목(해당 여분필드 배열 : <input type=number readonly>)을 value+1로 수정해주는 시스템을 구상했습니다.
복잡하죠...ㅠㅠ 단순하게 글쓰기 창에서만 투표할 수 있는 것, 페**북의 '좋아요' 개념이라고 생각하시면 될 듯해요ㅠㅠ
$(document).on('click', 'input[id*=like]', function(){
$.ajax({
type: 'post',
url: '쿼리문이 실행될 ajax.php 파일의 주소 (update문)',
data: { like : (좋아요값)
},
success: function (data){
//ajax에 접속 후 성공하면 실행시킬 구문 예를들어 ajax에서 insert 후 select문으로 결과를 조회해온다면
$('.likes').append(data);
}
});
});
ajax.php 에서는
$like = $_POST[like];
$sql = "update set ...."
sql_query($sql); //업데이트문 실행
//업데이트 실행 후 결과값 조회해서 echo로 결과값 뿌려줌
저라면 이렇게 만들것 같은데 참고하시면 될것 같습니다.
답변을 작성하려면 로그인이 필요합니다.
param은 제 임의대로 설정해도 되는 건가요?
그리고 받는 쪽 url은 뭔가요? 그러니까 제가 설정한 php가 돌아갈 파일을 새로 생성해 파라미터를 전송하라는 건가요?ㅠ 새로운 파일을 생성해야하는지..
새벽 늦게까지... 감사합니다 ㅠㅠ