즐겨찾기를 했을 때 포인트 지급 하는 방법이 있을까요 ㅠ?
본문
즐겨찾기를 했을 때 포인트 지급 하는 방법이 있을까요 ㅠ?
즐겨찾기 버튼을 눌렀을 때 포인트가 지급이 되는데 딱 1회만 지급되는 방식으로 진행하려 합니다.
<li class="bookmark"><a href="#" onclick="try{window.external.AddFavorite('<?php echo G5_SHOP_URL; ?>','<?php echo $default['de_admin_company_name']; ?>')}catch(e){ alert('이 브라우저에서는 즐겨찾기 기능을 사용할 수 없습니다.\n크롬에서는 Ctrl 키와 D 키를 동시에 눌러서 즐겨찾기에 추가할 수 있습니다.')}; return false;" id="favorite"><i class="fa fa-bookmark" aria-hidden="true"></i> 즐겨찾기</a></li>
즐겨찾기는 현재 이렇게 진행된 사항입니다. 고수님들의 조언을 기다립니다 ㅠ
답변 3
이전 질문글에
insert_point($member['mb_id'], 50, "즐겨찾기 포인트")
이걸로 하셨던데 이거를 더 확장하면 됩니다.
common.lib의 inset_point 관련 내용에
// 이미 등록된 내역이라면 건너뜀
이 쿼리가 있습니다.
inset_point의 사용법은
insert_point($mb_id, $point, $content='', $rel_table='', $rel_id='', $rel_action='', $expire=0)
이거고
중복 검사는
if ($rel_table || $rel_id || $rel_action)
{
$sql = " select count(*) as cnt from {$g5['point_table']}
where mb_id = '$mb_id'
and po_rel_table = '$rel_table'
and po_rel_id = '$rel_id'
and po_rel_action = '$rel_action' ";
$row = sql_fetch($sql);
if ($row['cnt'])
return -1;
}
이렇게 되어있습니다.
그런데 전 질문글에 있던거는
insert_point($member['mb_id'], 50, "즐겨찾기 포인트")
이거라서 content 에서 끝나므로 중복으로 되는겁니다.
insert_point($member['mb_id'], 50, "즐겨찾기 포인트",'즐겨찾기','@bookmark',$member['mb_id'])
이런식으로 하시면 되실것 같네요.
member테이블의 여분컬럼을 이용해서 체크 여부값 저장/판별과 ajax를 이용해 데이터를 조회하고 처리하셔야 할것같습니다.
즐겨찾기 버튼이 눌렸을때 -> ajax를 이용하여 member테이블에서 체크여부값 조회 ->
if 체크를 안했다면 포인트 지급
else 체크를 했다면 포인트 안지급 -> alert(포인트가 적립되었습니다)
와 같은 흐름으로 진행하셔야 할것 같습니다.
버튼을 통해서 눌렸는지는 확인을 할수는 있지만 끝까지 했는지 아니면 삭제를 했는지는 알수가 없습니다.