latest.skin.php 수정에 문제가 있어서 글을 올립니다!!
본문
아래는
basic에 latest.skin.php 코드입니다!!
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
include_once(G5_LIB_PATH.'/thumbnail.lib.php');
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$latest_skin_url.'/style.css">', 0);
$thumb_width = 297;
$thumb_height = 212;
$list_count = (is_array($list) && $list) ? count($list) : 0;
?>
<div class="pic_li_lt">
<h2 class="lat_title"><a href="<?php echo get_pretty_url($bo_table); ?>"><?php echo $bo_subject ?></a></h2>
<ul>
<?php
for ($i=0; $i<$list_count; $i++) {
$img_link_html = '';
$wr_href = get_pretty_url($bo_table, $list[$i]['wr_id']);
//좋아요
$good_href = G5_BBS_URL.'/good.php?bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&good=good';
//싫어요
$nogood_href = G5_BBS_URL.'/good.php?bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&good=nogood';
?>
<li>
<?php echo $img_link_html; ?>
<?php
if ($list[$i]['icon_secret']) echo "<i class=\"fa fa-lock\" aria-hidden=\"true\"></i><span class=\"sound_only\">비밀글</span> ";
echo "<a href=\"".$wr_href."\" class=\"pic_li_tit\"> ";
if ($list[$i]['ca_name']) {
echo "<span class =\"lt_ca\">" ."[{$list[$i]['ca_name']}]". "</span>";
}
// ------------------------------------
// ---------------------------------------------좋아요 구현 완료
if ($list[$i]['is_notice'])
echo "<strong>".$list[$i]['subject']."</strong>";
else
echo $list[$i]['subject'];
echo "</a>";
?>
<div class="lt_info">
<!-- <a href="<?php echo $good_href; ?>"><?php echo "<span class=\"lt_good\"><i class=\"fa fa-heart\"></i> ".$list[$i]['wr_good']."</span>"; ?></a> -->
<span class="lt_v_act_gng">
<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>
<b id="lt_v_act_good"></b>
</span>
<!-- <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> -->
<!-- <?php echo "<span class=\"lt_cmt\"><i class=\"fa fa-comment-o\"></i>" .$list[$i]['wr_comment']."</span>"; ?> -->
<script>
$(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;
});
});
function excute_good(href, $el, $tx)
{
$.post(
href,
{ js: "on" },
function(data) {
if(data.error) {
alert(data.error);
return false;
}
if(data.count) {
$el.find("strong").text(number_format(String(data.count)));
}
if(data.msg){
$tx.stop().hide();
$tx.text(data.msg);
$tx.fadeIn(200).delay(2500).fadeOut(200);
}
}, "json"
);
}
</script>
<?php } ?>
<?php if ($list_count == 0) { //게시물이 없을 때 ?>
<li class="empty_li">게시물이 없습니다.</li>
<?php } ?>
</ul>
<!-- <a href="<?php echo get_pretty_url($bo_table); ?>" class="lt_more"><span class="sound_only"><?php echo $bo_subject ?></span>더보기</a> -->
</div>
</script>
view.skin.php에 들어가 좋아요 버튼을 누르면 즉각적으로 숫자가 변화도록 하고싶었는데 여기서 문제가 생겼습니다.
1. 좋아요를 누르고 다시 취소가 안됩니다.
2. 좋아요를 누른 직 후에는 숫자가 바뀌는데 다시 새로고침을 하면 숫자가 좋아요를 누르기전 숫자로 바뀝니다.
이런식으로 누른 당시에는 숫자가 4가 되었다가
새로고침을하면 다시 3으로 바뀝니다.
3.
<?php
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>";
}
?>
이 코드는 좋아요를 누르기 전에는 흰색하트 누르고 난 후 에는 빨간 하트로 만들고 싶었는데
wr_good이 0일 때만 흰색하트고 나머지는 다 빨간하트라 어디 부분이 0일 때를 넣어야하는지 모르겠습니다.
혹시 이 1 2 3 에 대해서 알고있으신분은 도움을 주셨으면 합니다.!!
지금 구현중인 사이트 주소는 http://dkagh012.ivyro.net/ 입니다
하트 위에꺼는 1 과 2에 해당되고 아래 하트는 3에 해당됩니다
제가 글을 잘 못써서 이상하거나 이해안되는부분 있으시면 말씀해주세요!!
!-->!-->
답변을 작성하시기 전에 로그인 해주세요.