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

페이지 갯수 만큼 좋아요 이벤트 일어나는데 이유를 모르겠어요 도와주세요 채택완료

배정태 3년 전 조회 2,277

 

latest.skin.php에 만들었는데 좋아요를 누르면 저렇게 숫자가 바로 바뀌고 했으면 좋겠는데 추천이 취소되었습니다라는 문장이랑 좋아요가 글이 올라는 갯수만큼 이벤트가 반복되서 어찌해야할지 모르겠습니다.

</p>

<p><?php</p>

<p>if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>

<p>include_once(G5_LIB_PATH.'/thumbnail.lib.php');</p>

<p> </p>

<p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨</p>

<p>add_stylesheet('<link rel="stylesheet" href="'.$latest_skin_url.'/style.css">', 0);</p>

<p>$thumb_width = 297;</p>

<p>$thumb_height = 212;</p>

<p>$list_count = (is_array($list) && $list) ? count($list) : 0;</p>

<p>?></p>

<p> </p>

<p><div class="pic_li_lt"></p>

<p>   </p>

<p><h2 class="lat_title"><a href="<?php echo get_pretty_url($bo_table); ?>"><?php echo $bo_subject ?></a></h2></p>

<p> </p>

<p>    <ul></p>

<p>    <?php</p>

<p>    for ($i=0; $i<$list_count; $i++) {</p>

<p>       </p>

<p>        $img_link_html = '';</p>

<p>       </p>

<p>        $wr_href = get_pretty_url($bo_table, $list[$i]['wr_id']);</p>

<p>        //좋아요</p>

<p>        $good_href = G5_BBS_URL.'/good.php?bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&good=good';</p>

<p>        //싫어요</p>

<p>        $nogood_href = G5_BBS_URL.'/good.php?bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&good=nogood';</p>

<p> </p>

<p>    ?></p>

<p>   </p>

<p>        <li></p>

<p>            <?php echo $img_link_html; ?></p>

<p>            <?php</p>

<p>            if ($list[$i]['icon_secret']) echo "<i class=\"fa fa-lock\" aria-hidden=\"true\"></i><span class=\"sound_only\">비밀글</span> ";</p>

<p> </p>

<p>            echo "<a href=\"".$wr_href."\" class=\"pic_li_tit\"> ";</p>

<p>           </p>

<p>            if ($list[$i]['ca_name']) {</p>

<p>                echo  "<span class =\"lt_ca\">" ."[{$list[$i]['ca_name']}]". "</span>";</p>

<p>            }</p>

<p>            // ------------------------------------</p>

<p>     </p>

<p>             //  ---------------------------------------------좋아요 구현 완료</p>

<p>            if ($list[$i]['is_notice'])</p>

<p>                echo "<strong>".$list[$i]['subject']."</strong>";</p>

<p>            else</p>

<p>                echo $list[$i]['subject'];</p>

<p>       </p>

<p>                    echo "</a>";</p>

<p> </p>

<p> </p>

<p>        ?></p>

<p> </p>

<p>            <div class="lt_info"></p>

<p>             <!-- <a href="<?php echo $good_href; ?>"><?php echo "<span class=\"lt_good\"><i class=\"fa fa-heart\"></i> ".$list[$i]['wr_good']."</span>"; ?></a> --></p>

<p>   </p>

<p>            <span class="lt_v_act_gng">        </p>

<p>                <a href="<?php echo $good_href; ?>" id="lt_good" class="lt_v_good"><?php echo "<span class=\"lt_good\"><i class=\"fa fa-heart\"></i> </span>"; ?><strong><?php echo ($list[$i]['wr_good']) ?></strong></a></p>

<p>                <b id="lt_v_act_good"></b></p>

<p>            </span></p>

<p>



 </p>

<p>                 <!-- <a href="<?php echo $nogood_href; ?>"id="lt_nogood" class="lt_v_nogood"><?php echo "<span class=\"lt_good\"><i class=\"fa fa-heart-o\"></i> ".$list[$i]['wr_nogood']."</span>"; ?></a> --></p>

<p>                 <!-- <?php echo "<span class=\"lt_cmt\"><i class=\"fa fa-comment-o\"></i>" .$list[$i]['wr_comment']."</span>"; ?>   --></p>

<p>           </p>

<p>        </br>      </p>

<p> </p>

<p>





 </p>

<p><script></p>

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

<p>    // 추천, 비추천</p>

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

<p>        var $tx;</p>

<p>        if(this.id == "lt_good")</p>

<p>            $tx = $("#lt_v_act_good");</p>

<p> </p>

<p>        excute_good(this.href, $(this), $tx);</p>

<p>        return false;</p>

<p>    });</p>

<p>});</p>

<p> </p>

<p>function excute_good(href, $el, $tx)</p>

<p>{</p>

<p>    $.post(</p>

<p>href,</p>

<p>        { js: "on" },</p>

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

<p>if(data.error) {</p>

<p>alert(data.error);</p>

<p>                return false;</p>

<p>            }</p>

<p>





 </p>

<p>if(data.count) {</p>

<p>    $el.find("strong").text(number_format(String(data.count)));</p>

<p>}</p>

<p> </p>

<p>if(data.msg){</p>

<p>    $tx.stop().hide();</p>

<p>    $tx.text(data.msg);</p>

<p>    $tx.fadeIn(200).delay(2500).fadeOut(200);</p>

<p>}</p>

<p>



 </p>

<p>        }, "json"</p>

<p>    );</p>

<p>}</p>

<p></script></p>

<p>











 </p>

<p>    <?php }  ?></p>

<p>    <?php if ($list_count == 0) { //게시물이 없을 때  ?></p>

<p>    <li class="empty_li">게시물이 없습니다.</li></p>

<p>    <?php }  ?></p>

<p>    </ul></p>

<p>    <!-- <a href="<?php echo get_pretty_url($bo_table); ?>" class="lt_more"><span class="sound_only"><?php echo $bo_subject ?></span>더보기</a> --></p>

<p> </p>

<p></div></p>

<p></script></p>

<p>

 

이게 latest코드인데 어디가 문제인지 말씀만 해주시면 제가 고치고 싶어요 도와주세요!!

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

답변 2개

채택된 답변
+20 포인트
ifelse
3년 전

for문안에 id값이 반복되요.. id는 고유해야쥬...

스크립트도 list_count만큼 계속 만들어지구요

힌트는 여기까지~

 

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

답변에 대한 댓글 3개

배정태
3년 전
처음에는 무슨말인지 몰랐는데 이해가 되네요 for문에 때문에 id값이 반복되서 반복적으로 나온것이었군요 이해가 됬습니다
배정태
3년 전
혹시 이게 누를떄는 업데이트가 되는데 한번 누르고 다시 새로고침을 하면 좋아요 수가 전에 있던 숫자로 바뀌는데 이부분은 어떻게 해결 할 수 있을까요?
i
ifelse
3년 전
새로고침으로 증가값이 원래대로 돌아온다면 DB에 실질적으로 안 들어갔다는
이야기인데 수정한 소스를 봐야 알 수 있습니다.

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

한가지 더 팁을 드리자면 for 내부에 스크립트 넣지말고 외부로 빼시고

펑션에 변수까지 넣어서 날리세요..

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

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

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

로그인