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

안녕하세요. 수고많으십니다. 글쓰기를 실행해 보니까 올바른 방법으로 이용해 주십시오 뜨는데요. 채택완료

백2 4년 전 조회 1,271

</p>

<p><?php</p>

<p>$_REQUEST['bo_table'] = 'test'; // 테이블명 입력</p>

<p> </p>

<p>include_once('../../_common.php');</p>

<p> </p>

<p>?></p>

<p><div class="sub_content"></p>

<p>    <div class="farmnews"></p>

<p>        <div class="title">테스트 게시판</div></p>

<p>        <?php</p>

<p> </p>

<p>            // 목록 페이지 호출</p>

<p> </p>

<p>            include_once(G5_BBS_PATH.'/board.php');</p>

<p>        ?></p>

<p>    </div></p>

<p> </p>

<p></div></p>

<p>

 </p>

<p><?php </p>

<p>include_once(G5_PATH.'/tail.php');</p>

<p>?></p>

<p>

바로 위의 코드는 어저께 이렇게 해야지

게시판 리스트를 출력할수 있다고 해서

이 코드로 글쓰기를 실행해 보니까

 

올바른 방법으로 이용해 주십시오

 

뜨는데요.

 

궁금한게 두가지가 있습니다.

(1) get_session함수는 무엇이고, $token값이 무엇이 들어가야 하는지요?

왜 토큰값이 생성이 안되고 왜? 빈값이 $token에 들어가는지요?

 

(2) 바로 위의 코드만으로 게시판 뜨게 하기에는

코드가 부족한게 있는지요?

또 추가해야할 라이브러리 같은게 있는지요?

예제 좀 들어주시면 감사하겠습니다.

 

 

 

</p>

<p>// POST로 넘어온 토큰과 세션에 저장된 토큰 비교</p>

<p>function check_write_token($bo_table)</p>

<p>{</p>

<p>    if(!$bo_table)</p>

<p>        alert('올바른 방법으로 이용해 주십시오.', G5_URL);</p>

<p> </p>

<p>    $token = get_session('ss_write_'.$bo_table.'_token');</p>

<p>    set_session('ss_write_'.$bo_table.'_token', '');</p>

<p> </p>

<p>    if($token == '' || $token == null)</p>

<p>        alert('현재 토큰은 비어있음');</p>

<p>

 </p>

<p>    if(!$token || !$_REQUEST['token'] || $token != $_REQUEST['token'])</p>

<p>        alert('올바른 방법으로 이용해 주십시오.', G5_URL);</p>

<p> </p>

<p>    return true;</p>

<p>}</p>

<p>

 

안녕하세요

</p>

<p>if($token == '' || $token == null)</p>

<p>        alert('현재 토큰은 비어있음');</p>

<p>

이 코드는 제가 토큰값이 들어오는지 확인하기 위해 만든 코드입니다.

빈값이 들어오는것으로 뜨는데요.

 

 

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

답변 3개

채택된 답변
+20 포인트

1.get_session 은 세션값을 확인하는 함수입니다.

get_session('ss_bo_table') 하면 ss_bo_table 이름의 세션 이 존재하는지 리턴해줍니다

 

2. 위 코드로도 게시판 실행이 가능합니다

저기서 글쓰기를 누르면 write.php 가 나올텐데 

ss_bo_table 세션은 write.php 파일에서 

set_session('ss_bo_table', $bo_table); set_session('ss_wr_id', $wr_id);

 

이런식으로 선언됩니다.

 

따라서 글쓰기 페이지에서 해당 세션이 생성되었는지 확인해보세요

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

답변에 대한 댓글 1개

백2
4년 전
감사합니다.
아래와 같이해서 테이블 이름만 뜨는것을 확인하였습니다.
wr_id값은 안뜨네요.
주소창에 wr_id값은 안떠도 되는것인지요?

https://pasteboard.co/teZjheHMAO0E.png

https://pasteboard.co/oPGxYz1kQFq1.png


[code]

alert($bo_table);
alert($wr_id);

set_session('ss_bo_table', $bo_table);
set_session('ss_wr_id', $wr_id);

[/code]



바로 아래사진은 wr_id뜨면서 정상적으로 됩니다.
바로 아래는 새로만든 그누보드 게시판입니다.

https://pasteboard.co/ourMjemZ0qUU.png

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

게시판 아이디는 정상적으로 넘어가는데

token 세션이 생성되지 않는거 같네요

 

token세션은 게시판 글쓰기버튼을 누르면

생성함수가 실행됩니다.

 

해당 부분은

https://sir.kr/qa/208528

 

여기답변을 확인해보심이 좋을듯 합니다

 

======================

 

결론적으로 token 세션이 생성되지 않는것은 글쓰기 버튼 클릭시

common.js 함수 호출 오류이거나 

아니면 어떠한 스크립트 오류때문에 정상적으로 실행되지 않아서 입니다

 

디버깅 모드를 켜두고 스크립트 오류 부분을 확인해보시기 바랍니다

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

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

글쓰기 일때는 wr_id 값이 없습니다 (수정과 글 상세 때만 나옵니다)

 

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

답변에 대한 댓글 2개

백2
4년 전
넓은마인드님께서 말하신
"따라서 글쓰기 페이지에서 해당 세션이 생성되었는지 확인해보세요"
이 내용 말이지요 ?
어떻게 세션을 검사해야하는지 예를 들어주시면 감사하겠습니다.
한번 더 봐주시면 도움될거 같습니다.
백2
4년 전
넓은마인드님께서 말하신
"따라서 글쓰기 페이지에서 해당 세션이 생성되었는지 확인해보세요"
이 내용 말이지요 ?
어떻게 세션을 검사해야하는지 예를 들어주시면 감사하겠습니다.
한번 더 봐주시면 도움될거 같습니다.

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

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

로그인