제로보드(XE : XpressEngine) 자료실



Vote Reply Modify Delete Forward Prev Next List

  작성자   : 조성환 [ gadmin ] 추천: 2306, 조회: 7885, 줄수: 110, 분류: Etc.
zbxe 에서 "0개의 데이터 입력이 완료..."의 해결(iconv 설치하기)

마이그레이션이 뭔지도 모르는 저같은 초보님들을 위해, 감히 팁란에 이곳에서 도움받은 일들을 알기쉽게 정리해보려합니다.

저는 홈 이사를 기념으로 제로보드4.pl8 ->제로보드XE (beta0.2.8)로 변환(마이그레이션^^;)하려는중 문제가 생겼습니다.
12/21에 배포된 변환기로 xml파일을 만들어 절차대로 변환했는데도, 새 게시판을 확인해보면 정작 변환은 하나도 안된 것입니다.

증상1.    0개의 데이터 변환
가령 총 22개의 게시물이 있는 게시판을 복구하려한 경우에는, 변환중엔 어떤 에러 증상도 없는대신 변환 후에



요렇게 뜨면서, 정작 변환이 하나도 안된거였죠, (22개중에 0개복구, 즉 하나도 복구가 안되었다는 얘기)
이곳의 질답란과 팁란을 뒤져보니, "0개의 데이터 입력이 완료되었습니다"  의 경우 이런 내용들이 나오더군요.
1. *.xml파일의 이름이 영문이 아닌 경우 나타나기 쉽다.
2. "0"개의 데이터 뜬다해도, 관리자모드에서 게시판을 확인해보면 정작 제대로 옮겨져있을수 있다.

하지만 제 경우는 원래 xml파일이 영문이름이었고, 관리자모드에서 다시봐도 확인할수 없었습니다.
그래서 이상해서 생성된 xml파일을 살펴보다가 발견했습니다.

증상2. 변환된 *.xml 파일들의 크기가 거의1kb로 모두 똑같다. (글이 많든적든 모든 게시판변환파일이 다 1kb)
문제의  xml파일을 메모장으로 열어 살펴보니, 게시판 내용들은 아무것도없고, 딸랑 이렇게만 쓰여있더군요.

<?xml version="1.0" encoding="utf-8" ?>
<posts count="12" id="게시판 이름" pubDate="20071224033336">
<post>
<title><br />
<b>Fatal error</b>:  Call to undefined function:  iconv() in <b>저의홈 절대경로/zeroboard4/classes/zMigration.class.php</b> on line <b>93</b><br />

(한글 부분은 실제 제홈의 영문주소와 이름을 편의상 한글로 바꾼것)
그래서 xml에 문제가 생긴것같아 이곳질답란에 올렸고, 이창훈님과 제로님의 도움으로 무사히 해결을 보았습니다. (두분께 정말 감사합니다^^)
괜히 글이 길어지는데, 이제 정리해보겠습니다  ^^;




1. 증상 : 1) "0/??개의 데이터입력이 완료되었습니다" 메세지가 뜨고 정작 아무것도 변환이 안되어있음.
            2) 생성된 *.xml 파일의 내용이 사실상 텅 비어있음 (무조건 1kb에 가까운 저용량)

2. 원인 :  기존 서버(제로보드4 쓰던 서버)에 iconv 가 없어서 생기는 문제
   알고보니 제가 이전에 제로보드4를쓰던 웹호스팅사의 서버에서 iconv라는 것이 안깔려있었던 것입니다.
  전  iconv 이 뭔지는 잘 모르겠지만, php버전이 낮거나 업데이트가 늦은 서버의 경우 이런일이 있을수 있다고합니다.
  Call to undefined function:  iconv() 라는 메세지는 그래서 나온것이였죠

3. 대처법 :  
*서버관리자에게 iconv 라이브러리를 설치해달라고 요청한다.
->관리자에 따라 귀찮아할수 있습니다^^; 설치가 늦어질수도 있죠 이 경우를 위해 2번째 방법을 소개~

* 직접 설치한다 : 어렵지 않습니다. 용기를 갖고 try!
    1) 먼저 태터툴즈를 다운 받는다 ( http://www.textcube.org/download/   '텍스트큐브' 란 파일다운. 기본팩/확장팩 상관없음.
    2) 압축을 풀고 그 안에서 iconv.php 파일을 찾아서,
    3) 문제의 예전서버에 깔아놓았던 제로보드4 데이터 추출 프로그램의 lib 디렉토리에  iconv.php를 넣는다.
        (기본설정대로하면 zeroboard4/lib 디렉토리)
    4) 역시 lib 디렉토리에 있는 lib.php를 다운받아, 메모장으로 연다.
    5)  include "./lib/iconv.php";  를 윗부분에 있는 <?php  아래줄에 넣어준 후 저장한다.
       그후 저장한 lib.php파일을 다시 제로보드4 데이터 추출 프로그램의 lib 디렉토리에 업로드(덮어쓰기)
        보기 예)
=== lib.php 내용 ===
<?php

 include "./lib/iconv.php";

/**
   * @brief 제로보드4의 경로를 이용하여 DB정보를 얻어옴
   * @author zero@zeroboard.com
   **/
  function getDBInfo($path) {
      if(substr($path,-1)=='/') $path = substr($path, 0, strlen($path)-1);
      $config_file = sprintf('%s/config.php',$path);
      if(!file_exists($config_file)) return;

      $buff = file($config_file);

      $output->hostname = trim($buff[1]);
      $output->userid = trim($buff[2]);
      $output->password = trim($buff[3]);
      $output->database = trim($buff[4]);
      return $output;
  }

  /**
   * @brief javascript로 에러 메세지 출력
   **/
  function doError($message) {
      include "./tpl/header.php";
      printf('<script type="text/javascript">alert("%s"); location.href="./";</script>', $message);
      include "./tpl/footer.php";
      exit();
  }

?>



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


 자, 이제   iconv 를 설치했으니 변환기의 설명대로 다시 처음부터 차근차근 변환하시면 됩니다^^
노파심에 데이터이전 메뉴얼도 링크해놓아요 ^^    http://www.zeroboard.com/?mid=mig_manual&pageid=408648
이제 딱 이대로 하시면 xml파일이 제대로 만들어져서 각 파일의 용량이 게시판의 용량에따라  제각각인 것부터 알수 있습니다. (게시물이 많은 게시판변환시는 다운할때 시간이 걸리죠 ㅎㅎ)
전 이대로 해서 완벽히 이전성공했네요. 다른분들도 무사히 하시기 바랍니다

많은 도움주신 이창훈785 님과 제로님께 감사드립니다. (_ _)




출처 : http://www.zeroboard.com/mgrc_tip/16316887


이전: 파일을 업로드 하는중 100%에서 멈춰버리는 현상 해결(강추)
다음: 홈페이지 로고 위치 수정하는 방법(layout의 css 파일 변경)
2009/06/06(04:37) from 59.30.129.71
CrazyWWWBoard 2000

Vote Reply Modify Delete Forward Prev Next List

(c) Nobreak Technologies, Inc.