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

웹호스팅에 업로드하면 Call to undefined function get_write_token() 에러가 떠요 채택완료

서기제 6년 전 조회 2,626

bitnami wamp를 설치해서 컴퓨터안에서 홈페이지 제작하다가, 모든 기능이 다 정상 작동해서

웹호스팅 이전할 때 방식으로 그누보드랑 db도 고도호스팅으로 다 옮겼거든요.

근데 다른건 다 문제없는데, 잘 작동하던 상담신청 폼이 옮기고 나서는 Call to undefined function get_write_token() 이라는 치명적인 에러가 뜨면서, 상담신청 폼 자체가 화면에 표시가 안되네요 ㅠㅠ

pc안에서는 잘 동작하는데, 왜 호스팅에 업로드하면 이런 에러가 뜨는지 도무지 이해가 안됩니다. ㅠㅠ

 

요게 그 문제의 폼입니다.

</p>

<p><form name="fwrite" method="post" action="/g5/bbs/write_update.php" onsubmit="return checkFrm(this);">

       <input type="hidden" name="w" value="">

       <input type="hidden" name="bo_table" value="counsel">

       <input type="hidden" name="wr_id" value="">

       <input type="hidden" name="sca" value="">

       <input type="hidden" name="sfl" value="">

       <input type="hidden" name="stx" value="">

       <input type="hidden" name="spt" value="">

       <input type="hidden" name="sst" value="">

       <input type="hidden" name="sod" value="">

       <input type="hidden" name="s" value="s">

       <input type="hidden" name="wr_subject" value="상담신청">

       <input type="hidden" name="wr_content" value="상담신청">

       <input type="hidden" name="wr_1" value="">

       <input type="hidden" name="token" value="<?php echo get_write_token($bo_table);?>">

                        

       <div class="input_wrap">

             <input type="text" placeholder="이름" name="wr_name" required />

       </div>

      ..... 중략

</form></p>

<p>

 

혹시 해결방법 아시는 분 있으면 도움 부탁드려요~~ ㅠㅠ

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

답변 2개

채택된 답변
+20 포인트
6년 전

아---------- 일단 전에 한 ---------------- 답변 ------------- 철회합니다. ------------ 그누보드에선 제가 답변한 식의(경로변경등)의 문제가 생기지 않는군요. 경로 바꾸고 별짓 다해도 파일을 못찾는 일이 생기지 않는군요. --- 그래서 경로의 문제가 아닌것같고요. 다른 문젠거 같은데 현재 질문으론 저 함수가 없다밖엔 해석이 안됩니다.

인클루드 오류는 아니고... ... 문의주신 상황을 자세히 설명해주셔야 할 것 같습니다.

----

그리고

그누보드 bbs 폴더의 파일을 모두 열어서 보니

--

-- get_write_token() 함수를 쓰는 곳은 딱 한곳입니다.

--

//그누보드설치경로/bbs/write_token.php 이 파일입니다.

--

---- 제가 알아낸 것은 여기까지...

-- 아래는 그 파일의 내용입니다.  - 파일 140개를 열어봤지만 아직 write_token.php 를 호출하는 곳은 못찾았습니다.

if(!$bo_table)    die(json_encode(array('error'=>'게시판 정보가 올바르지 않습니다.', 'url'=>G5_URL)));

set_session('ss_write_'.$bo_table.'_token', '');

$token = get_write_token($bo_table);

die(json_encode(array('error'=>'', 'token'=>$token, 'url'=>''))); ?>

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

답변에 대한 댓글 1개

서기제
6년 전
정성어린 답변 넘 감사드립니다. 덕분에 그누보드 구조를 이해하는데 도움이 많이 되었어요.
일단 문제 해결은 php문법이 아니라 common.js 에 있는 함수를 이용하는 식으로 javascript 문법으로 토큰 불러와서 해결했습니다 ^^

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

6년 전

에러메시지가... 다음과 같잖아요.

Call to undefined function get_write_token()

 

get_write_token() 이라는 정의되지 않은 함수를 쓰신 것이니... 이 함수가 어디서 나오는지 찾아보세요..

없는 함수를 쓰신것이니까요...

 

아마도 소스를 통째로 복사하셨을테니 없진 않을꺼에요.

그렇다면 include 경로가 문제겠죠....

그 페이지에서 찾아서 인클루드 경로가 틀린 지점을 찾아 고치시면 될 겁니다.

 

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

답변에 대한 댓글 2개

서기제
6년 전
답변 감사드려요~ 저 함수는 www.도메인.com/g5/js/common.js랑 ../g5/lib/common.lib.php에 들어있는걸로 알고있는데,
Head부분에 <script src="/g5/js/common.js?ver=171222"></script>라고 적어 두었거든요~
그리고 common.lib.php는 action="/g5/bbs/write_update.php" 이부분에서 로드하는거 아닐까요? 사실 정확히는 잘 모르고 있습니다.
문제는 pc에서 돌리는 bitnami wamp서버에서는 작동이 잘 된다는겁니다 ㅠㅠ
팻시
6년 전
혹시요. 서버이전 하시면서 경로를 바꾸셨나요?
예를 들어 pc 서버에서는
http://localhost/index.php?bo_table=tablename 이렇게 쓰셨다면
이전된 서버에서는
http://domain.com/home/index.php?bo_table=tablename 이런식으로
경로가 바뀐것 아닌가요?
통째로 파일을 옮겼으면 빠진것이 없을텐데....
무언가 없다고 나온다면...
그때는 경로가 틀린것 밖에 없거든요.
어떤상황인지 알려주시고...

위의 저 소스가 나오는 파일명도 알려주세요.

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

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

로그인