하나의 아이디로 한달에 5개 까지만 글쓰기 제한을 두고 싶습니다 어떻게 해야하나요?
초보라 잘알지를 못합니다.
고수님들의 가르침을 바랍니다
초보라 잘알지를 못합니다.
고수님들의 가르침을 바랍니다
|
댓글을 작성하시려면 로그인이 필요합니다.
댓글 4개
1. 세션에 담던가
2. 쿠키에 담던가
3. 디비에 담던가 하면 되죠
어떻게 작성하는지 자세히 좀 설명을 해주시면 고맙겠습니다
테이블 하나 만들고
글쓰는페이지에
db검사해서 5초과면 에러뜨고 아니면 +1 하는 소스 넣고 그럼 끝
테이블을 하나 만드셔야 합니다. 컬럼은 id, mb_id, date, count 3개면 될듯하네요,,
이렇게 만드신후 글등록하는 페이지 (/bbs/write_update.php)에서 글등록 되기전에 우선 확인합니다.
ID | MB_ID | DATE | COUNT
-------------------------------------------
1 | tester | 2010.11 | 3
위 테이블을 write_count_table 이라 하고 다음과 같이 글이 등록되어 데이터가 들어가있다고 예를 들어봅시다.
$checkQry="select id, count from write_count_table where id='{$member[mb_id]}' and date='".date('Ym')."'";
$result=sql_fetch($checkQry);
if($result['count']>=5)
{
// 글등록 안되게 처리
}
else
{
// 글등록 되게끔 처리
}
위와 같이 처리해 주시면 될듯 합니다. $result['count']가 5이하이면 글등록을 시켜주고 글이 다 등록된 뒤에는 insert또는 update를 해주셔야 합니다.
일단 위에 결과물이 있으니까 그걸 이용하면 되겠죠..?
if($result['id']) // 이번달에 이미 한번이상 등록되어 있는 경우
{
$updateQry="update write_count_table set count=count+1 where id='{$result[id]}'";
sql_query($updateQry);
}
else // 이번달에 아직 한번도 등록되지 않은경우
{
$insertQry="insert into wirte_count_table set id='{$member[mb_id]}', date='".date('Ym')."', count=1";
sql_query($insertQry);
}
위와 같이 처리하시면 됩니다.