묻고답하기
수백개의 DB 데이터를 일괄적으로 XE 문서로 등록할 수 있을까요?
2013.06.08 02:57
XE를 이용해 평가 사이트를 만들려고 합니다.
평가할 대상의 리스트는 DB 데이터(SQL 및 CSV 등)로 가지고 있기 때문에 형식에 맞게 가공하기는 어렵지 않습니다.
그런데 이 리스트를 XE의 게시판에 문서들로 일괄적으로 입력하는 방법이 없을까요 ?
그냥 SQL 데이터를 SQL의 DOCUMENT 부분에 IMPORT 시키자니 게시물의 SRL 이 꼬이거나 하는 문제가 있을 것 같고
어떻게 손을 봐서 겹치지 않게 올리는 방법이 없을까 여쭤 봅니다.
---- 질문 추가 -----
푸시아님께서 말씀해주신 함수를 메뉴얼에서 찾아 일단 테스트 해 보기 위하여
"외부페이지" 문서를 하나 생성하고 해당 문서에는
<?
if(!defined("__ZBXE__")) exit();
$obj->title = "My sample document";
$obj->content = "Hello World!";
$obj->tags = "demo, hello";
$obj->member_srl = "4";
$document_srl = getNextSequence();
$obj->document_srl = $document_srl;
$obj->module_srl = "197";
$obj->allow_comment = 'Y';
$obj->allow_trackback = 'Y';
$oDocumentController = &getController('document');
$output = $oDocumentController->insertDocument($obj);
?>
이렇게 작성한 PHP 파일을 하나 연결시켰습니다
member_srl 4인 회원의 이름으로 197번 모듈 번호를 가진 게시판에 글을 작성하기 위한 목적이었는데
혹시 ./modules/document/document.controller.php 에 함수가 정의되어 있다는 건가 싶어서 해당 경로를
require_once 하였을 경우에는 페이지 자체가 에러가 납니다.
어떻게 하면 좋을까요.....
----- 자문자답 -----
<?
if(!defined("__ZBXE__")) exit();
define('__ZBXE__', true);
require_once './modules/document/document.class.php';
require_once './modules/document/document.model.php';
require_once './modules/document/document.controller.php';
$oDocumentController = &getController('document');
$obj->title = "My sample document";
$obj->content = "Hello World!";
$obj->tags = "demo, hello";
$obj->module_srl = "197";
$obj->member_srl = "4";
$obj->user_id = "~~~~";
$obj->nick_name = "~~~~";
$obj->allow_comment = 'Y';
$document_srl = getNextSequence();
$obj->document_srl = $document_srl;
$output=$oDocumentController->insertDocument($obj,true);
?>
이렇게 닉네임과 아이디등을 다 넣어주고 require_once 에 윗 부분을 넣어주니 해결되더군요.
댓글 1
-
푸시아
2013.06.08 03:05
-
Larki
2013.06.08 04:16
본문에 질문을 더 추가하였습니다. 봐주시면 감사하겠습니다. -
Larki
2013.06.08 04:42
rssboard 의 소스를 뜯어보면서 참조하였습니다.
insertDocument 함수를쓰면 됩니다.