테스트 사이트 - 개발 중인 베타 버전입니다

비회원 게시글 맛보기 기능? 가능할까요 채택완료

그누5입문 11년 전 조회 7,044

기본적으로 회원만 열람할 수 있는 게시판을 만드려고 합니다.

 

다만 비회원이라도, 처음 눌러본 한 개의 게시글은 회원가입 없이도 볼 수 있도록 하고 싶은데 가능할까요?

 

비로그인의 방문자에게도 포인트를 줄 수 있다면 1포인트를 적립해주고, 열람시 1차감으로 하면 될텐데 아쉽네요ㅎㅎ;

 

아이디어를 부탁드립니다!!

댓글을 작성하려면 로그인이 필요합니다.

답변 7개

채택된 답변
+20 포인트

아 제가 잘못생각했네요 죄송합니다~~

비회원은 login_check.php에 엑세스 하지 않습니다.

 

일단 이렇게 한번 해보세요~

 

/skin/board/적용할스킨명/view.skin.php 제일 상단

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

다음 부분에 적어주세요

 

</p><p style="margin-left: 40px;"> if (!$is_member)</p><p style="margin-left: 80px;">{</p><p style="margin-left: 80px;">if ($_SESSION['already_read'] == "1")</p><p style="margin-left: 80px;">{</p><p style="margin-left: 120px;">?></p><p style="margin-left: 120px;"><Script Type = "Text/JavaScript"></p><p style="margin-left: 160px;">  alert("회원가입 후 이용가능합니다");</p><p style="margin-left: 160px;">location.href = "/bbs/register.php";</p><p style="margin-left: 120px;"></Script></p><p style="margin-left: 120px;"><?</p><p style="margin-left: 120px;">exit;</p><p style="margin-left: 80px;">}</p><p style="margin-left: 80px;">else</p><p style="margin-left: 80px;">{</p><p style="margin-left: 120px;">$_SESSION['already_read'] = "1";</p><p style="margin-left: 80px;">}</p><p style="margin-left: 40px;">}</p><p style="margin-left: 40px;">
 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

그누5입문
11년 전
감사합니다.!! 완벽하게 작동되네요~
두 번 보여주고 차단한다면, 전체에 if문을 한번 더 씌워서 "2"까지 올려주면 될까요?
어쨋든 빠르고 정확한 답변 감사드려요^^

댓글을 작성하려면 로그인이 필요합니다.

9년 전

어찌 어찌 하다가 제가 자문자답하게 되었네요. { 가 빠져서 안됐던 것입니다. 저는 20회가 필요해서 다음과 같이 했더니 잘 됩니다. 감사합니다.  

 

</p><p>
 if (!$is_member)
{
if ($_SESSION['already_read'] >= "20")
{
?>
<Script Type = "Text/JavaScript">
  alert("회원가입 후 이용가능합니다");
location.href = "/bbs/register.php";
</Script>
<?
exit;
}
else
{
if ($_SESSION['already_read'] == "") $_SESSION['already_read'] = 0;
$_SESSION['already_read'] = $_SESSION['already_read'] + 1;
}
}</p><p> </p><p>

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

9년 전

안녕하세요. 너무 좋은 기능이라서 쓰고 싶은데 맨 앞에 채택 된 것은 1회만에 회원가입 요청안내를 나타내고 여기에 써주신 것은 아예 페이지가 깨져버리네요.  

 

한 10회정도 보여준 후에 회원가입안내를 하고 싶은데 깨지지 않는 올바른 코드를 받을 수 있을까요?  

 

다시한번 점검을 부탁드립니다. 감사합니다.  

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

2번 이라면 이렇게.. 하면 될것 같습니다.
 

[code]

if (!$is_member)

if ($_SESSION['already_read'] >= 2)
{
?>
<script Type = "Text/JavaScript">
  alert("회원가입 후 이용가능합니다");
location.href = "/bbs/register.php";
</script>
<?
exit;
}
else
{

if ($_SESSION['already_read'] == "") $_SESSION['already_read'] = 0;
$_SESSION['already_read'] = $_SESSION['already_read'] + 1;
}
}
​[code] 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

물깊은
9년 전
안녕하세요. 너무 좋은 기능이라서 쓰고 싶은데 맨 앞에 채택 된 것은 1회만에 회원가입 요청안내를 나타내고 여기에 써주신 것은 아예 페이지가 깨져버리네요.



한 10회정도 보여준 후에 회원가입안내를 하고 싶은데 깨지지 않는 올바른 코드를 받을 수 있을까요?



다시한번 점검을 부탁드립니다. 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

그누보드4인지 5인지 좀 먼저 알려주시겠어요?

태그를 2개 하셔서.. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

그누5입문
11년 전
그누5입니다.
'설마 쉽게 되겠어'하고 글 올려봤는데 이렇게 구체화시켜주시다니 감사드립니다!!

댓글을 작성하려면 로그인이 필요합니다.

이런식으로 하면 되지 않을까요?^^

 

로그인시 (login_check.php)에

 </p><p>$_SESSION['already_read'] = '0';</p><p>

 

게시물 읽을때 (view.php)에 (추가적으로 회원이 아닐때만 실행되도록 해야되고, 게시물 읽기 권한을 비회원도 주셔야 겠네요)

 

코드 안보고 말씀드리는거라 정확히 기억은 안나는데 $_SESSION['ss_mb_id'] == ''일때를 체크하면 로그인중인지 알 수 있을것 같네요

 

</p><p>if ($_SESSION['already_read'] == '0')</p><p>{</p><p style="margin-left: 40px;">$_SESSION['already_read'] = '1';</p><p>}</p><p>else</p><p>{</p><p style="margin-left: 40px;">?></p><p style="margin-left: 40px;"><Script Type = "Text/JavaScript"></p><p style="margin-left: 80px;">//한번 읽고 난 후 처리</p><p style="margin-left: 80px;">alert("회원가입후 이용가능합니다");</p><p style="margin-left: 80px;">location.href = "/index.php";</p><p style="margin-left: 40px;"></Script><?</p><p style="margin-left: 40px;">exit;</p><p> </p><p>}</p><p>
 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

w
wede
11년 전
보다보니까 정말 유용한 기능 같아서요
까막눈이라 아는바가 없는데 조금 더 자세히 설명해주실 수 있을까요?ㅠ
직접 코딩까지 해주셔서 감사한데, 어디에다 적용을 해야할지 모르겠네요
1줄짜리는 login_check에, 15줄짜리는 view에 넣어주면되나요? 늦어도 좋으니 시간 나실때 상세히 안내 가능하시면, 좀 부탁드리겠습니다ㅜㅜ 감사합니다

댓글을 작성하려면 로그인이 필요합니다.

11년 전

직접 해 본건 아니구요,

생각만 해 보자면 

첫 글 읽을 시 비회원인 경우 즉, <?php if (!$is_member) {  ?>

세션이나 쿠키에 값이 없을 시 일정한 값을 주고,

값이 이미 있으면 글을 열람할 수 없게 메시지나 alert창을 보이고

다른 페이지로 이동시키면 될 듯 합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인