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

latest.skin.php 수정에 문제가 있어서 글을 올립니다!! 채택완료

배정태 3년 전 조회 2,058

아래는

basic에 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>   </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>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>

 

 

view.skin.php에 들어가 좋아요 버튼을 누르면 즉각적으로 숫자가 변화도록 하고싶었는데 여기서 문제가 생겼습니다.

 

1. 좋아요를 누르고 다시 취소가 안됩니다.

2. 좋아요를 누른 직 후에는 숫자가 바뀌는데 다시 새로고침을 하면 숫자가 좋아요를 누르기전 숫자로 바뀝니다.

이런식으로 누른 당시에는 숫자가 4가 되었다가

새로고침을하면 다시 3으로 바뀝니다. 

3.

</p>

<p>                <?php   </p>

<p>                 if ($list[$i]['wr_good'] == 0) {

                echo  "<a href=\"".$good_href."\">". "<span class=\"la_good\">" ."<i class=\"fa fa-heart-o\"></i> " ."{$list[$i]['wr_good']}". "</span>";

                echo "</a>";

                }else{

                    echo  "<a href=\"".$good_href."\">". "<span class=\"la_good\">" ."<i class=\"fa fa-heart\"></i> " ."{$list[$i]['wr_good']}". "</span>";

                    echo "</a>";

                }

                ?></p>

<p>

이 코드는 좋아요를 누르기 전에는 흰색하트 누르고 난 후 에는 빨간 하트로 만들고 싶었는데

wr_good이 0일 때만 흰색하트고 나머지는 다 빨간하트라 어디 부분이 0일 때를 넣어야하는지 모르겠습니다. 

 

 

혹시 이 1 2 3 에 대해서 알고있으신분은 도움을 주셨으면 합니다.!!

 

 

지금 구현중인 사이트 주소는 http://dkagh012.ivyro.net/ 입니다

 

하트 위에꺼는 1 과 2에 해당되고 아래 하트는 3에 해당됩니다

 

제가 글을 잘 못써서 이상하거나 이해안되는부분 있으시면 말씀해주세요!!

 

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

답변 1개

채택된 답변
+20 포인트
아르키어드

일단 다른문제는 둘째치고 클릭이벤트 스크립트가 게시물만큼 반복되서 등록되네요

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

답변에 대한 댓글 2개

배정태
3년 전
$(function() {
// 추천, 비추천
$("#lt_good").click(function() {
var $tx;
if(this.id == "lt_good")
$tx = $("#lt_v_act_good");

excute_good(this.href, $(this), $tx);
return false;
});
});

이부분 말씀하시는게 맞나요?
아르키어드
3년 전
네 그게 for문안에서 돌아가고 있어서 이벤트가 4번 등록되었습니다. 비로그인상태에서 눌러보시면 경고창 4번뜹니다

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

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

로그인