스터디.스터디방 입니다. 컴퓨터, 인터넷, 홈페이지, 포토샵 등에 유용한 정보가 가득하답니다.



   
  [제로보드] getmicrotime() 에러 해결방법
안녕하세요..  ^-^

제로보드를 사용하시다 보면 잘만 작동되던 특정 프로그램이나 파일이 이상이 생겨

작동하지 않는 경우가 생깁니다. 이경우는 대부분 웹호스팅을 받고 있는 유저들에게 자주 생기는데

서버를 관리하고 있는 서버마스터가 서버의 특성 설정을 바꿔주게 되면 이런저런 오류가

갑자기 생겨나곤 하기 때문입니다...자주 들려 난데없이 등장하는 각종 오류에 대한 답답한 마음을

풀어드리고자 이렇게 첫번째 팁을 적게 되었습니다...


[Day 01 - getmicrotime() 에러 해결방법]


제로보드를 사용하시다 보면 아래와 같은 오류가 날때가 있습니다..

오늘은 아래의 오류호출의 원인과 해결방법을 알아보도록 하겠습니다..


▶ Fatal error: Cannot redeclare getmicrotime() in /주소/~~~~/bbs/lib.php on line 180


도대체 이게 무슨 오류???


특정 파일을 include 시 중복해서 include 하거나 함수가 중복되게 되면 위와 같은 에러가 납니다...

보통 제로보드를 연동해서 만든 프로그램은 소스자체에서 "lib.php"과 "head.php"파일을 자주 불러와 쓰게 되는데

여기서 head.php안에서 lib.php 파일을 인클루드 한 것과 프로그램 자체에서 또 lib.php 파일을 인쿨르드 한 것이

충돌하여 생겨나는 것입니다...무슨 말인지 모르겠다구요..아래를 봅시다 ^-^

① Head.php 파일


head.php 파일을 에디터로 열어보시면 "lib.php"파일을 불러오고 있음을 확인하실 수 있습니다...


//라이브러리 함수 파일 include

if(eregi("://",$_zb_path)) $_zb_path="";
// include $_zb_path."lib.php";


① 특정 프로그램.php 파일


이 역시 보통 아래와 같이 head.php 파일과 lib.php 파일을 불러와 쓰고 있음을 확인하실 수 있습니다...

require "lib.php";


include '_head.php';



그렇다면 해결방법은???


위 부분을 자세히 읽어보셧다면 조금만 머리를 굴려보십시오....

중복 호출때문에 생겨난 오류이니 한번만 호출하도록 바꿔주면 되겠죠 ^^

모든 프로그램이 공통적으로 인쿨르드하는 head.php 파일에서 인쿨르드하는 lib.php를

한번만 인클루드하도록 바꿔주면 모든 것은 해결됩니다...


head.php 메모장을 여신 후에


아래를


// 라이브러리 함수 파일 include
        if(eregi("://",$_zb_path)) $_zb_path="";
        include $_zb_path."lib.php";


아래와 같이 바꿔주시면 됩니다...


// 라이브러리 함수 파일 include
        if(eregi("://",$_zb_path)) $_zb_path="";
        include_once $_zb_path."lib.php";


그래도 해결이 안된다??!!


이 경우는 해당 프로그램이 head.php 파일 인쿨르드 외에 직접 lib.php 파일을 인쿨르드하여 쓰는

프로그램으로 우리가 위에서 head.php 파일안에 lib.php 파일을 한번 인클루드 하도록 바꿔주었으니

그래도 안되실 경우에는 해당 프로그램 안에서 lib.php 을 인클루드하는 부분을 일일이

주석처리나 삭제처리 해주시면 해결됩니다 ^^


require "lib.php";


위 부분을


// require "lib.php";


이렇게 주석처리 해주시거나 삭제하십시오 ^^


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


include를 include_once로 바꿔주시면 모든게 해결됩니다...

혹시 중복일지도 모르나 제 설명이 더 자세하리라 믿고 다음팀을 준비하며 말을 마치겠습니다..

PREV  D80 사용자 강좌 다녀왔어요  
NEXT  스패머 가입자 막는방법