불쌍한 중생좀 구제해주세요,,ㅠㅠㅠ

불쌍한 중생좀 구제해주세요,,ㅠㅠㅠ

QA

불쌍한 중생좀 구제해주세요,,ㅠㅠㅠ

본문

아래의 소스는 포인트 제한구문이 있는 점프 소스입니다만, 하루 횟수제한을 구현하고 싶습니다,,


한번 봐주세요,,,ㅜㅜ

 

---------------------------------------------------------------------------------

 

여러 팁을 찾아서 적용해보니

 

bbs/board.php 에서 적당한곳에 

 

//JumpUp 기능으로 현재글을 최신 글로 업데이트하기 

if($_GET[cmd] == "make_new"){ 

 

if(!$is_admin == "super" || !$is_admin == "group"){ 

if($member[mb_point] < 10){ 

$msg = "포인트가 부족해서 점프기능을 사용하실 수 없습니다."; 

alert($msg, "./board.php?bo_table=$bo_table&page=$page"); 

$wr_num = get_next_num($write_table); 

 

$sql = " update {$write_table} "; 

$sql.= "    set wr_num = '{$wr_num}' "; 

$sql.= "      , wr_datetime = '{$g4['time_ymdhis']}' "; 

$sql.= "  where wr_parent = '{$write['wr_id']}' "; 

 

$qry = sql_query($sql); 

 

if(!$is_admin == "super" || !$is_admin == "group"){ 

$m_point = "-10"; // 차감할 포인트 (-숫자) 

insert_point($member[mb_id], $m_point, "포인트 차감"); 

    

    goto_url("./board.php?bo_table=$bo_table&page=$page" . $qstr); 

 

---------------------------------------------------------------------------------

 

위처럼 적용하니 잘 됩니다,, 그런데,, 횟수제한이 미해결입니다,,

 

하루 횟수제한은 10회로 하려고 하는데,, 어떤 함수가 필요한건지요,, 

 

10회가 되면 버튼이 안보이게 해도 될듯한데요,,,,,,

 

어떻게 해야할지 알려주시면 감사드려요,,,

 

불쌍한 중생 도와주십시요,,,감사합니다,,

 

 

 

이 질문에 댓글 쓰기 :

답변 2

if(!$is_admin == "super" || !$is_admin == "group"){ 

$m_point = "-10"; // 차감할 포인트 (-숫자) 

insert_point($member[mb_id], $m_point, "포인트 차감"); 

--------윗 부분 수정

if(!$is_admin){

  $m_point = "-10"; // 차감할 포인트 (-숫자) 

  $ret = insert_point($member[mb_id], $m_point, "포인트 차감"); 

  if( $ret ==1){

      if($write[wr_1] != $g4[time_ymd]) $add_qry="wr_1 ='$g4[time_ymd]', wr_2 = '1' ";

     else $add_qry = "wr_2 = wr_2 + 1";

    sql_query("update $write_table set $add_qry where wr_id='$wr_id'");

   }

}

/////////////////////////////////////////////

if($_GET[cmd] == "make_new"){ 다음에 추가

  if($write[wr_1] == $g4[time_ymd] && $write[wr_2] >=10) alert("1일 10회만 가능:);

 

/////////////////

-- 위와 같이하면 여분필드에 그날의 점프횟수를 누적해서 처리할때 비교하게 됩니다

-- 점프 버튼에서는 아래와 같이 하면 버튼이 나오지않게됩니다

<? if($write[wr_1]!=$g4[time_ymd] || $write[wr_2]<10){?>

점프버튼 링크

<?}?> 

ㅠㅠㅠ 너무 감사드립니다,, 균이님 덕분에 해결되었습니다. 경이아빠님을 비롯해서 관심가져주셔서 너무 감사드립니다. 사실 그누보드 함수라든지 구문 명령어라든지 정말 아무것도 모르고 그냥 여기저기 좋은 소스를 가져다 붙이는 정도의 미천한 실력입니다,, 균이님, 경이아빠님,, 그리고 그누보드 회원분들께 진심 감사드립니다,, 앞으로 열심히 공부하겠습니다,,ㅠㅠ 혹시 균이님처럼 프로그래밍을 할수있는 실력이 되고자 하온데,,,기초부터 공부할수있는  책이라든지 동영상이 있으면 추천 부탁드립니다,, 거듭 감사드려요,, 좋은 하루 보내세요~

insert_point($member[mb_id], $m_point, "포인트 차감");

위의 포인트 주는 부분에서

"포인트 차감" 이라는 부분이 다른 포인트 주는 명칭과 겹치지 않는 조건이라면...​

 

오늘날짜로 포인트 테이블에서

해당 포인트 지급건수를 카운팅해서 if문 으로 저건 걸어주면 되지 않을까요?

 

참고로 아래의 쿼리를 참고하세요.

중요한건 아래의 쿼리가 답은 아닙니다.

조건은 직접 테이블 체크하여 확인하시기 바랍니다.

 

$sql = " select count(*) as cnt from $g4[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'  where po_datetime = '오늘날짜'";

        $row = sql_fetch($sql); 

 

if ($row[cnt]>10) { //처리못함

 

}  

 

답변 정말 감사드립니다,, 말씀해주신데로 "포인트 차감"은 겹치지 않기때문에 소스를 적용했습니다만, 아래와 같이 에러가 뜨는데,, 어떤 뜻인지 알수 있을까요? 감사합니다,, 꾸벅
1064 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select count(*) as cnt from g4_point where mb_id = '' ' at line 1

error file : /bbs/board.php

mb_id = '' 부근에서 에러가 나는걸 보면.
회원 아이디가 정상적으로 받아진건지 한번 더 체크해보시고요.
위의 예는 말그대로 예입니다.
상황에 맞게 쿼리를 수정하셔야 합니다.ㅠㅠ
그리고 where절에 있는 조건도...
기존에 들어간 값들을 체크해보고. 필요한건 넣고 불필요한건 빼셔야 할거에요.

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

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