현재 CSV의 내용을 토대로 글을 자동 등록 시키기 위해서 PHP를 만들고 있는 상황입니다.
현재 코드는
<?php include '../common/autoload.php'; $handle = fopen($_GET['id'] . '.csv', 'r'); while (($data = fgetcsv($handle, 300, ",")) !== FALSE) { $obj = Context::getRequestVars(); $obj->document_srl = getNextSequence(); $obj->module_srl = '20592'; $obj->title = $data[1]; $obj->content = $data[1]; $obj->allow_comment = 'Y'; $obj->allow_trackback = 'Y'; $obj->user_id = 'ID'; $obj->user_name = '이름'; $obj->nick_name = '닉네임'; $obj->member_srl = '4'; $obj->email_address = '이메일'; $obj->extra_vars1 = '1'; getController('document')->insertDocument($obj, true); $document_srl= $obj->document_srl; $obj->document_srl = $document_srl; $obj->module_srl = '20592'; $obj->lang_code = 'ko'; $obj->var_idx = 1; $obj->eid = 'test'; $obj->value = '145'; getController('document')->insertDocumentExtraVar($obj, true); break; } ?>
이렇게 돼있고 (user_id, user_name, nick_name, email_address은 실제 값이 드러나나 가려놓은 겁니다)
이 코드를 토대로 라이믹스 설치 폴더에 csv라는 폴더를 만들고 그 안에 csv 파일들과 php 파일을 올려서 php 파일을 실행시켜보니 원하는 대로 데이터를 불러와 글 등록은 정상적으로 돼나, 확장변수 부분이
"ArgumentCountError #0 "Too few arguments to function documentController::insertDocumentExtraVar(), 2 passed in /home/user/web/csv/upload.php on line 41 and at least 4 expected" in modules/document/document.controller.php on line 1520"
라는 오류를 뿜으며 되지가 않네요.
원하는 바는 'test'라는 ID를 가진 'test'라는 이름의 확장변수에 145라는 값을 나오게 하는 부분입니다.
어떤 부분이 부족한지 알려주실 수 있나요?
감사합니다.
오류 메세지에도 인자 수가 적다고 나와있는데... 소스코드를 보셨으면 바로 아실수 있으셨을텐데요.