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

latest.skin.php 관련 질문입니다!! 채택완료

배정태 3년 전 조회 1,908

</p>

<p><?php</p>

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

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

<p>run_event('bbs_good_before', $bo_table, $wr_id, $good);</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>            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> </p>

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

<p> </p>

<p>         <?php  </p>

<p> </p>

<p>//  if ($list[$i]['wr_id'].'&good=good') {</p>

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

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

<p>    echo "<b id=\"lt_v_act_good\"></b>";</p>

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

<p>    }</p>

<p>    else{</p>

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

<p>         echo "<b id=\"lt_v_act_good\"></b>";</p>

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

<p>    }</p>

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

<p>    ?></p>

<p>





 </p>

<p><?php }  ?></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></script></p>

<p> </p>

<p><script></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> </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>

 

처음 게시물은 저렇게 좋아요 버튼을 누르면 이글을 추천 하셨습니다라는 문구가 뜨는데

 

그 아래의 게시물을 좋아요를 누르면 

이런식으로 문구가 뜨는데 어떻게 수정을 해야 할 지 모르겠습니다.

 

 

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

답변 3개

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

</p>

<p>문제는 동일한 id 여러개로 되어있어서 제대로 실행을 할 수없어서 입니다</p>

<p><span class="token keyword keyword-echo">echo</span> <span class="token double-quoted-string string">"<a href=\""</span><span class="token punctuation">.</span><span class="token variable">$good_href</span><span class="token punctuation">.</span><span class="token double-quoted-string string">"\" id=\"lt_good\" <---- 이 id가 list목록수 만큼 나올 것 아닙니까?</span></p>

<p>view페이지처럼 좋아요버튼이 한번만 나올 때에 사용하는 것을 리스트에다 옮겨놓았는데 제대로 될 수가 없습니다</p>

<p>id는 삭제하고 아래코드처럼 class로 작동 되도록 수정 해야하는데</p>

<p>테스트를 안해봐서 정확히 작동할지는 모르겠습니다</p>

<p><span class="token keyword keyword-echo">echo</span> <span class="token double-quoted-string string">"<b id=\"lt_v_act_good\"></b>"</span><span class="token punctuation">; </span></p>

<p><span class="token punctuation">수정==></span></p>

<p><span class="token keyword keyword-echo">echo</span> <span class="token double-quoted-string string">"<b class=\"lt_v_act_good\"></b>"</span><span class="token punctuation">;</span></p>

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

<p>  <span class="token function">$</span><span class="token punctuation">(</span><span class="token string">"#lt_good"</span><span class="token punctuation">)</span><span class="token punctuation">.</span><span class="token function">click</span><span class="token punctuation">(</span><span class="token keyword keyword-function">function</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>

        <span class="token keyword keyword-var">var</span> $tx<span class="token punctuation">;</span>

        <span class="token keyword keyword-if">if</span><span class="token punctuation">(</span><span class="token keyword keyword-this">this</span><span class="token punctuation">.</span>id <span class="token operator">==</span> <span class="token string">"lt_good"</span><span class="token punctuation">)</span>

            $tx <span class="token operator">=</span> <span class="token function">$</span><span class="token punctuation">(</span><span class="token string">"#lt_v_act_good"</span><span class="token punctuation">)</span><span class="token punctuation">;</span></p>

<p><span class="token punctuation">수정 ===></span>

  <span class="token function">$</span><span class="token punctuation">(</span><span class="token string">".</span>lt_v_good<span class="token string">"</span><span class="token punctuation">)</span><span class="token punctuation">.</span><span class="token function">click</span><span class="token punctuation">(</span><span class="token keyword keyword-function">function</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>

            $tx <span class="token operator">=</span> <span class="token function">$</span><span class="token punctuation">(this).children(</span><span class="token string">".lt_v_act_good"</span><span class="token punctuation">)</span><span class="token punctuation">;</span></p>

<p> </p>

<p><span class="token punctuation">

 

 

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

답변에 대한 댓글 1개

배정태
3년 전
제가 짧은 지식으로 만든다고 만들었는데 저 id 가 문제일거라고는 생각을 못했네요.. 도와주셔서 정말 감사합니다

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

아르키어드

음...일단 원인은 위 내용으로는 찾을수 없으나 의심되는 상황은 자바스크립트 이벤트를 아이디값에 주셨네요

아이디는 1개 페이지에서 1개만 존재하는 유니크한 값인데... 코드를 보니 아마 저 좋아요 버튼이 리스트배열만큼 출력되고 그만큼의 같은 id를 가진 것들이 많을것으로 보여요. 그래서 처음 클릭한 엘리먼트와 나중에 클릭한 엘리먼트를 같은 엘리먼트라고 판단해서 처음 클릭했던 엘리먼트를 기준으로 이벤트가 작동하는거 같아요

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

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

배정태
3년 전

..

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

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

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

로그인