겸손한 개발을 위한 자양분


문서 내용 :
a. MySQL 을 이용한 DB설정
b. Eventum 설치 및, DB 연동
c. 한글 사용을 위한 설정


기본 준비물 :

공식 홈페이지 : http://eventum.mysql.org/

Download Url : http://dev.mysql.com/downloads/other/eventum/


설치는 다음 파일을 기준으로 합니다
eventum-2.1.1.tar.tar


우선 이븐텀에서 사용할 DB를 설정합니다.
MySQL Admin을 띄우고, Catalogs에서 연결하고자 하는 DB를 확인합니다.
없는 경우에는, Schemata 아래의 창에서 마우스 오른쪽 버튼을 눌러 New Schema를 선택하면
새로운 DB를 생성할 수 있습니다.

아래의 그림에서는 _eventum_1 이 이븐텀에 사용할 DB입니다.


다음으로, MySQL Admin을 띄우고, User Administration 항목에서 이븐텀에서 사용될 User를 추가해줍니다.


유저 이름과, 패스워드 설정이 끝나면, Schema Privileges 탭으로 옮겨
Available Privileges에 있는 각 SQL 명령에 대한 권한들을 모두 Assign 해 줍니다.

이때 Schemata라고 되어있는 부분이 사용될 DB인데,
각 유저의 각 DB별로 권한이 따로 설정됩니다.
따라서, 권한 설정시 Schemata의 DB가 올바르게 선택되어있는지 확인하여야 합니다.


유MySQL 기본 설정은 한글 입력에 오류가 있을 수 있습니다.
따라서, 시작변수에서 STRICT_TRANS_TABLES 옵션을 삭제 해주셔야합니다.


이제, 다운로드 받은 이븐텀 압축파일을
웹 DOC 디렉토리에 올리고
Explorer에서 Setup경로를 실행해줍니다.

기본적인 정보들을 설정합니다.



설치 완료 후, 기본 계정으로 로그인합니다.
기본 계정은
ID : admin@example.com
PW : admin
입니다.


이제 설치는 완료되었습니다.
단, 한글 설정에 문제가 없게 하기위해 몇가지 추가 설정을 해줍니다.

Config 파일 수정부분

D:\_HostingData\htdocs\_General\eventum-2.1.1\config\config.php


한글입력을 설정하고, Admin Page에서 한글 이름을 입력한 화면입니다.


다음은 Eventum 실행시 첫 화면의 그래프에서 한글 나오게 하는방법입니다.

  1. Php setup에서 MultiBytes Extra 설치
  2. 아래 파일들 수정

D:\_HostingData\htdocs\_General\eventum-2.1.1\include\jpgraph\jpgraph.php


// TTF Font families
DEFINE("FF_COURIER",10);
DEFINE("FF_VERDANA",11);
DEFINE("FF_TIMES",12);
DEFINE("FF_HANDWRT",13);
DEFINE("FF_COMIC",14);
DEFINE("FF_ARIAL",15);
DEFINE("FF_BOOK",16);
DEFINE("FF_GULIM",17);

..

class TTF {
var $font_fam;
//---------------
// CONSTRUCTOR
function TTF() {
    // Base file names for available fonts
    $this->font_fam=array(
     FF_COURIER => TTF_DIR."courier",
     FF_VERDANA => TTF_DIR."verdana",
     FF_TIMES => TTF_DIR."times",
     FF_HANDWRT => TTF_DIR."handwriting",
     FF_COMIC => TTF_DIR."comic",
     FF_ARIAL => TTF_DIR."arial",
     FF_BOOK => TTF_DIR."bookant",
     FF_GULIM => TTF_DIR."gulim");
}

// Create the TTF file from the font specification
function File($fam,$style=FS_NORMAL) {
    $f=$this->font_fam[$fam];
    if( !$f ) JpGraphError::Raise("<b>JpGraph Error:</b> Unknown TTF font family.");
    switch( $style ) {
     case FS_NORMAL:
        break;
//     case FS_BOLD: $f .= "bd";
//        break;
//     case FS_ITALIC: $f .= "i";
//        break;
//     case FS_BOLDIT: $f .= "bi";
//        break;
//     default:
//        JpGraphError::Raise("<b>JpGraph Error:</b> Unknown TTF Style.");
    }

function StrokeText($x,$y,$txt,$dir=0,$paragraph_align) {

    $txt = mb_convert_encoding($txt, 'UTF-8', 'EUC-KR');

    // Do special language encoding
    if( LANGUAGE_CYRILLIC )
     $txt = LanguageConv::ToCyrillic($txt);

        }
     }
    }
    elseif($this->font_family >= FF_COURIER && $this->font_family <= FF_GULIM) { // TTF font
     $file = $this->ttf->File($this->font_family,$this->font_style);
     $angle=$dir;
     $bbox=ImageTTFBBox($this->font_size,$angle,$file,$txt);


D:\_HostingData\htdocs\_General\eventum-2.1.1\stats_chart.php


// check to see if the TTF file is available or not
//$ttf_font = TTF_DIR."verdana.ttf";
$ttf_font = TTF_DIR . "gulim.ttf";
if (!@file_exists($ttf_font)) {
$font = FF_FONT1;
} else {
//$font = FF_VERDANA;
$font = FF_GULIM;
}

// Legends
$p1->SetLegends($labels);
$graph->legend->SetFont($font, 0, 9);
$graph->legend->Pos(0.06,0.27);


파일을 수정이 끝나면, 아래의 폴더에 윈도우의 글꼴을 복사해줍니다.


끝.