글쓴 후 창닫기와 기간에 따른 포인트입니다. 채택완료
| 문의: 기간별로 포인트 주는 것인데요
특정게시판 aa 가 있을 때 본인(회원)글이 1일~6일 이전에 글이 있는 상태에서 글을 작성하게되면 포인트1.800 주고 7일후에 글작성하게되면 1.700p / 8일후:1600 p/ 9일후:1500p / 10일후:1400p / 11일후:1300 p/ 12일후:12000 p/ 13일후:1100 p/ 14일후에 글 작성 하면 1000포인트를 주고자 합니다. 14일 이후는 포인트 없구요 이런 문의였는데 균이님이 아래처럼 답을 주셨는데 왕 초보라 어케 해야 할지 모르겠씁니다. 좀 자세히 알려주시면 대단히 고맙겠습니다. |
| 아래는 균이님이 주신 답입니다. |
| 1.스킨폴더에 write_update.skin.php를 만들고
if(!$w && $bo_table=='aa' && $member[mb_id]){ $today=G5_SERVER_TIME; sql_query("update $g5[member_table] set mb_1='$today' where mb_id='$member[mb_id]'"); } ?> 2. write_upadte.head.skin.php를 만들고
if(!$w && $bo_table=='aa' && $member[mb_id]){ $dayday=16 - ceil((G5_SERVER_TIME - $member[mb_1])/86400); if($dayday <= 6) $board['bo_write_point']=10000; else if($dayday >15){ $board['bo_write_point']=0; if($dayday >60) sql_query("delete from $g5[point_table] where mb_id='$member[mb_id]'"); }else $board['bo_write_point']= $dayday * 1000; } ?> mb_1에 날짜별로 임의 값을 직접넣어가며 희망하는대로 되는지 몇가지를 테스트해보고 사용하세요 넣어볼 값은 아래처럼 해서 나오는 값입니다 strtotime('2014-03-01 14:00:00'); strtotime('2014-02-15 03:00:00'); |
| 또 하나요
write_update.skin.php 파일에
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 { alert("완료 ^^"); } ?> 위처럼 하면 글 작성 후 "완료"란 메시지가 뜹니다. 메시지가 뜬 후 창을 닫게 했으면 하는데 어케 하는지요 alert("완료 ^^","self.close();"); 이렇게 하니 안되네요 |
답변 2개
답변에 대한 댓글 4개
------------------------------------
14일후에 글 작성 하면 1000포인트를 주고자 합니다.
14일 이후는 포인트 없구요
<------------------------------이게 무슨 말입니까?
하여튼 아래처럼 해보세요
정확한지 테스트 해봐야 되는 것이니 테스트 해보고 사용하세요
2. write_upadte.head.skin.php 내용
<?php
if(!$w && $bo_table=='aa' && $member[mb_id]){
$dayday= ceil((G5_SERVER_TIME - $member[mb_1])/86400);
if($dayday <= 6) $board['bo_write_point']= 1800; //6일보다 작거나 같으면
else if($dayday >=14) $board['bo_write_point']=0; //14일보다 크거나 같으면
else if($dayday ==13) $board['bo_write_point']=1000; //13일이면
else $board['bo_write_point']= (14-$dayday) * 100 +1000; //그 외
}
?>
///////////////////////////////////
1.스킨폴더에 write_update.skin.php를 만들고 <---라고 했는데
----------------------------------------------
또 하나요
write_update.skin.php 파일에
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
{
alert("완료 ^^");
}
?>
<--------------------------------------- write_update.skin.php 을 이렇게만 했다는 것인가요?
어쨌던 write_update.php를 팝업창에서 실행되게 한 것인가요?
팝업창이라면 alert_close("완료"); <---이렇게 하면 되지만 등록 페이지는 기본적으로 팝업창이 아닌데
무슨 질문인지 오리무중입니다
write_update.skin.php → 파일 아래코드
<?php
if(!$w && $bo_table=='aa' && $member[mb_id]){
$today=G5_SERVER_TIME;
sql_query("update $g5[member_table] set mb_1='$today' where mb_id='$member[mb_id]'");
}
?>
write_upadte.head.skin.php →파일 아래코드
<?php
if(!$w && $bo_table=='aa' && $member[mb_id]){
$dayday= ceil((G5_SERVER_TIME - $member[mb_1])/86400);
if($dayday <= 6) $board['bo_write_point']= 1800; //6일보다 작거나 같으면
else if($dayday ==7) $board['bo_write_point']=1700; //7일이면
else if($dayday ==8) $board['bo_write_point']=1600; //8일이면
else if($dayday ==9) $board['bo_write_point']=1500; //9일이면
else if($dayday ==10) $board['bo_write_point']=1400; //10일이면
else if($dayday ==11) $board['bo_write_point']=1300; //11일이면
else if($dayday ==12) $board['bo_write_point']=1200; //12일이면
else if($dayday ==13) $board['bo_write_point']=1100; //13일이면
else if($dayday ==14) $board['bo_write_point']=1000; //14일이면
else if($dayday >=15) $board['bo_write_point']=0; //15일보다 크거나 같으면
else $board['bo_write_point']= (14-$dayday) * 100 +1000; //그 외
}
?>
이렇게 했습니다. 제가 잘 못 했나요? 포인트 적용이 안되는 것 같습니다.
다른 게시판을 만들어 해볼게요^^
<--------------------------------------- write_update.skin.php 을 이렇게만 했다는 것인가요?
어쨌던 write_update.php를 팝업창에서 실행되게 한 것인가요?
팝업창이라면 alert_close("완료"); <---이렇게 하면 되지만 등록 페이지는 기본적으로 팝업창이 아닌데
무슨 질문인지 오리무중입니다
란 답
위 게시판이 아닌 다른 게시판인데...;;
아 그런가요!
전 글쓴 후 완료란 메시지를 보여주고 창을 닫았으면 해서 문의 했는데 너무 몰라서 죄송합니다. ;;
포인트 사용에 체크하지않으면 저장 자체가 되지않습니다
이 부분은 제대로 설정 되어잇는가요?
창을 닫는다<-- 이게 무슨 말인지 모르세요?
팝업창을 띄웠을때 팝업창을 닫는다거나 브라우저를 닫아버린다는 말이잖아요
질문 내용 무시하고 짐작하자면 alert("완료","이동할 페이지주소"); 이걸 원하는 것 같네요
이동할 페이지주소는 아래처럼 크게 3가지를 사용할 수 있겠습니다
board.php?bo_table=$bo_table
board.php?bo_table=$bo_table&wr_id=$wr_id
/
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
특정게시판에 본인글이 6일전에 본이 글이 있으면 00포인트 적립 / 7일전에 글이 있으면 00포인트 .....이렇게 했으면 하는데 좀 도와주십시오
부탁드릴게요