하나의 아이디로 한달에 5개 까지만 글쓰기 제한을 두고 싶습니다 어떻게 해야하나요? 정보
하나의 아이디로 한달에 5개 까지만 글쓰기 제한을 두고 싶습니다 어떻게 해야하나요?본문
하나의 아이디로 한달에 5개 까지만 글쓰기 제한을 두고 싶습니다 어떻게 해야하나요?
초보라 잘알지를 못합니다.
고수님들의 가르침을 바랍니다
초보라 잘알지를 못합니다.
고수님들의 가르침을 바랍니다
댓글 전체
글 작성시 카운트 해서
1. 세션에 담던가
2. 쿠키에 담던가
3. 디비에 담던가 하면 되죠
1. 세션에 담던가
2. 쿠키에 담던가
3. 디비에 담던가 하면 되죠
제가 초보라서 소스를 작성할줄 모릅니다.
어떻게 작성하는지 자세히 좀 설명을 해주시면 고맙겠습니다
어떻게 작성하는지 자세히 좀 설명을 해주시면 고맙겠습니다
DB가 답일듯한데
테이블 하나 만들고
글쓰는페이지에
db검사해서 5초과면 에러뜨고 아니면 +1 하는 소스 넣고 그럼 끝
테이블 하나 만들고
글쓰는페이지에
db검사해서 5초과면 에러뜨고 아니면 +1 하는 소스 넣고 그럼 끝
세션 쿠키보다는 DB에 담는것을 추천해 드립니다. 세션으로 해도 되지만 DB가 더 컨트롤하기 좋고 쿠키는 클라이언트(사용자)측에 저장되기 때문에 삭제 및 조작이 가능합니다.
테이블을 하나 만드셔야 합니다. 컬럼은 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);
}
위와 같이 처리하시면 됩니다.
테이블을 하나 만드셔야 합니다. 컬럼은 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);
}
위와 같이 처리하시면 됩니다.