게시판에 첨부한 링크 클릭시

게시판에 첨부한 링크 클릭시

QA

게시판에 첨부한 링크 클릭시

본문

게시판에 첨부한 링크 클릭시 포인트를 차감하고싶은데.. 어떤분이 문의하신 자료보고

글읽기포인트로해서 포인트차감하는 방법이 있어서 일단 따라서 넣어 봤는데..

전 제목 링크 클릭시가 아니라  wr_link1 <- 여기에 넣은 링크만 클릭시 차감을 하게 하고싶은데

밑에 소스에서 어딜 수정해야 하는지 몰라서 문의드립니다.

부탁드립니다. ㅜㅜ

 


insert_point($member['mb_id'], $board['bo_read_point'], ((G5_IS_MOBILE && $board['bo_mobile_subject']) ? $board['bo_mobile_subject'] : $board['bo_subject']).' '.$wr_id.' 링크클릭', $bo_table, $wr_id, '링크클릭');

이 질문에 댓글 쓰기 :

답변 1

bbs/link.php을 아래와 같이 수정해 보세요.
※ 해당 팁은 그누4 팁"passion"님의 팁을 5로 옮긴 것입니다.
출처:https://sir.kr/g4_tiptech/20158

 


<?php
include_once('./_common.php');
////////////////// user add 20180106 ////////////////////
//아래의 100내용은 차감될 포인트
$link_point = 100;
/////////////////////////////////////////////////////////
$html_title = '링크 > '.conv_subject($write['wr_subject'], 255);
if (!($bo_table && $wr_id && $no))
    alert_close('값이 제대로 넘어오지 않았습니다.');
// SQL Injection 예방
$row = sql_fetch(" select count(*) as cnt from {$g5['write_prefix']}{$bo_table} ", FALSE);
if (!$row['cnt'])
    alert_close('존재하는 게시판이 아닙니다.');
if (!$write['wr_link'.$no])
    alert_close('링크가 없습니다.');
$ss_name = 'ss_link_'.$bo_table.'_'.$wr_id.'_'.$no;

////////////////// user add 20180106 ////////////////////
//1회 차감을 위한 검색 조건 --- 뭐 임으로 해도 됨 그런데 다른 부분도 맞춰줘야 한다는..
$ss_name2 = "{$member[mb_id]}_sslink_{$bo_table}_{$wr_id}";
if ($board[bo_link_level] <= $member[mb_level]) // 회원이상 링크가 가능하다면
{
 // 링크 포인트가 음수이고 회원의 포인트가 0 이거나 작다면
 if ($member[mb_point] + $link_point < 0)
  alert("보유하신 포인트(".number_format($member[mb_point]).")가 없거나 모자라서 링크(".number_format($link_point).")가 불가합니다.\\n\\n포인트를 적립하신 후 다시 링크해 주십시오.");
 $sql2 = " SELECT * from {$g5['point_table']} where po_content = '$ss_name2' Order By po_id ";
 $row2 = sql_fetch($sql2);
 if (!$row2[po_content]) {
  // 게시물당 한번만 차감하도록 수정
  insert_point($member[mb_id], $link_point*(-1), "$ss_name2", $bo_table, $wr_id, "링크");
 }
}
/////////////////////////////////////////////////////////

if (empty($_SESSION[$ss_name]))
{
    $sql = " update {$g5['write_prefix']}{$bo_table} set wr_link{$no}_hit = wr_link{$no}_hit + 1 where wr_id = '{$wr_id}' ";
    sql_query($sql);
    set_session($ss_name, true);
}
goto_url(set_http($write['wr_link'.$no]));
?>
 

 

※ 바둑 중이라 테스트를 하지 못 했는데 혹시 문제가 있다면 이 글에 "문제가 있다"라 답변 달아 놓으세요. 2시간 정도 뒤에 한번 봐드리겠습니다.(채택 거절)

답변을 작성하시기 전에 로그인 해주세요.
전체 129,406 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT