비밀글 세션 저장안하기 채택완료
안녕하세요.
자신이 쓴 비밀글에도 비밀번호 받을려고하는데
write_update.php 에서
// 비밀글이라면 세션에 비밀글의 아이디를 저장한다. 자신의 글은 다시 비밀번호를 묻지 않기 위함 //if ($secret) // set_session("ss_secret_{$bo_table}_{$wr_num}", TRUE);
이 부분 주석처리해도 자신이 쓴 글에는 세션이 저장되는거 같습니다.
이윰테마사용하고있고요..
이윰테마/skin_bs/board/basic/view.skin.html 최상단에
//비밀글의 경우 세션이 살아 있다면...
//세션을 강제적으로 해제한다.
$ss_name = "ss_secret_{$bo_table}_$view[wr_num]";
if (get_session($ss_name))
{
set_session($ss_name, FALSE);
}
이 코드를 삽입해도 안되네요
echo $ss_name을 치니까 bo_table이랑 $view 변수 값이 없었씁니다
어디를 어떻게 고쳐야할까요;
답변 3개
// if (!get_session($ss_name)) goto_url('./password.php?w=s&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);
이렇게 하시면 세션에 관계없이 무조건 비밀번호를 받습니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
스킨에서 간편하게 처리하는 방법도 있습니다.
비밀글로 작성된 글을 읽을 때 무조건 패스워드 입력받기 http://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=107
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 5개
이윰테마/skin_bs/board/basic/view.skin.html 의 상단을 이렇게 수정했습니다
<?php if (!defined('_GNUBOARD_')) exit;
$ss_name = 'ss_secret_{$bo_table}_{$wr_num}';
set_session($ss_name, '');
?>
브라우져를 모두 닫아서 세션정보 유지를 지워주세요
그리고 테스트 해보세요
if (get_session($ss_name))
{
set_session($ss_name, '');
}
최초로 볼떄는 비밀번호 받지만 봤던글 다시보면(2회차 이후) 비밀번호 안받고 그대로 들어가지네요..
모바일도 똑같습니다 ㅠㅠ..
board.php
102 라인부터 입니다.
$ss_name = 'ss_secret_'.$bo_table.'_'.$write['wr_num'];
if (!$is_owner)
{
//$ss_name = "ss_secret_{$bo_table}_{$wr_id}";
// 한번 읽은 게시물의 번호는 세션에 저장되어 있고 같은 게시물을 읽을 경우는 다시 비밀번호를 묻지 않습니다.
// 이 게시물이 저장된 게시물이 아니면서 관리자가 아니라면
//if ("$bo_table|$write['wr_num']" != get_session("ss_secret"))
if (!get_session($ss_name))
goto_url('./password.php?w=s&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);
}
set_session($ss_name, TRUE);
여기를 수정하셔야 합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
아침부터 정말 감사드립니다! 날씨추운데 몸 건강 잘챙기시고 남은 올해 잘 마무리하셨으면 좋겠습니다!