묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
MetaWeblog xmlrpc를 이용한 제로보드 게시물 등록 소스좀 봐주세요. ㅡ.ㅡ
2008.10.02 14:30
MetaWeblog xmlrpc를 이용한 제로보드 게시물 등록 소스좀 봐주세요. ㅡ.ㅡ
제 나름대로 다른쪽껄 배껴왔는데 아무리 해도 안되네요.
어디가 잘못된건지 전혀 모르겠습니다.
{$blogid} 는 mid를 이야기하는건가요?
하단부분에
$response = $client->send($f);
이 소스는 알아서 실행되는건가요?
아님 따로 실행해줘야 하는건가요?
______________________________ [ 소 스 ] __________________________
<?php
//requires xmlrpc.inc from http://phpxmlrpc.sourceforge.net/
require_once('./xmlrpc/lib/xmlrpc.inc');
// 블로그API 주소와 아이디 비밀번호를 변수에 넣고
$g_blog_url = "http://urin79.com/zb/blog/api";
$user_id = "xxxxx";
$password = "xxxxxxx";
$GLOBALS['xmlrpc_internalencoding'] = 'UTF-8';
// 블로그아이디(제로보드 : $obj->blogid = $this->mid;), 제목, 내용, 테그, 카테고리를 입력받는다)
function newPost( $blogid, $title, $description, $tagwords, $categories="")
{
// 블로그API 주소와 아이디 비밀번호를 변수를 UTF-8로 인코딩한다
global $user_id;
global $password;
global $g_blog_url;
$client = new xmlrpc_client( "{$g_blog_url}"); // $client변수에 블로그주소를 저장
$f = new xmlrpcmsg("metaWeblog.newPost", // metaWeblog.newPost method... 포스팅할 명령어를 $f변수에 넣음
array(
new xmlrpcval("{$blogid}", "string"), // blogid.(블로그아이디 = mid 맞나(?))
new xmlrpcval($user_id, "string"), // user ID. (아이디)
new xmlrpcval($password, "string"), // password (비밀번호)
new xmlrpcval( // body (struct변수에 제목, 내용 카테고리, 테그를 배열화해서 넣음
array(
'title' => new xmlrpcval($title, "base64"),
'description' => new xmlrpcval($description, "base64"),
'categories' => new xmlrpcval($categories, "base64"),
'tagwords' => new xmlrpcval($tagwords, "base64")
), "struct"),
// 공개여부는 제로보드XE에 없는듯... new xmlrpcval(true, "boolean") // publish... true는 공개, false는 비공개가 된다.
)
);
$f->request_charset_encoding = 'UTF-8'; // $f를 utf-8로 인코딩 함.
$response = $client->send($f); // $response에 실행명령삽입($client변수로 블로그 로그인 후 send($f) 글 전달함
}
newPost( "", "테스트 글쓰기입니다.test title", "컨텐츠를 추가합니다. content should be added here", "tag1,tag2,tag3");
?>
제 나름대로 다른쪽껄 배껴왔는데 아무리 해도 안되네요.
어디가 잘못된건지 전혀 모르겠습니다.
{$blogid} 는 mid를 이야기하는건가요?
하단부분에
$response = $client->send($f);
이 소스는 알아서 실행되는건가요?
아님 따로 실행해줘야 하는건가요?
______________________________ [ 소 스 ] __________________________
<?php
//requires xmlrpc.inc from http://phpxmlrpc.sourceforge.net/
require_once('./xmlrpc/lib/xmlrpc.inc');
// 블로그API 주소와 아이디 비밀번호를 변수에 넣고
$g_blog_url = "http://urin79.com/zb/blog/api";
$user_id = "xxxxx";
$password = "xxxxxxx";
$GLOBALS['xmlrpc_internalencoding'] = 'UTF-8';
// 블로그아이디(제로보드 : $obj->blogid = $this->mid;), 제목, 내용, 테그, 카테고리를 입력받는다)
function newPost( $blogid, $title, $description, $tagwords, $categories="")
{
// 블로그API 주소와 아이디 비밀번호를 변수를 UTF-8로 인코딩한다
global $user_id;
global $password;
global $g_blog_url;
$client = new xmlrpc_client( "{$g_blog_url}"); // $client변수에 블로그주소를 저장
$f = new xmlrpcmsg("metaWeblog.newPost", // metaWeblog.newPost method... 포스팅할 명령어를 $f변수에 넣음
array(
new xmlrpcval("{$blogid}", "string"), // blogid.(블로그아이디 = mid 맞나(?))
new xmlrpcval($user_id, "string"), // user ID. (아이디)
new xmlrpcval($password, "string"), // password (비밀번호)
new xmlrpcval( // body (struct변수에 제목, 내용 카테고리, 테그를 배열화해서 넣음
array(
'title' => new xmlrpcval($title, "base64"),
'description' => new xmlrpcval($description, "base64"),
'categories' => new xmlrpcval($categories, "base64"),
'tagwords' => new xmlrpcval($tagwords, "base64")
), "struct"),
// 공개여부는 제로보드XE에 없는듯... new xmlrpcval(true, "boolean") // publish... true는 공개, false는 비공개가 된다.
)
);
$f->request_charset_encoding = 'UTF-8'; // $f를 utf-8로 인코딩 함.
$response = $client->send($f); // $response에 실행명령삽입($client변수로 블로그 로그인 후 send($f) 글 전달함
}
newPost( "", "테스트 글쓰기입니다.test title", "컨텐츠를 추가합니다. content should be added here", "tag1,tag2,tag3");
?>