<?
$mode=explode('_', $_POST['mode']);
//OpenAPI 클래스
class OpenAPI {
var $apikey;
//XML 문서 redirect
function request($url) {
header('Content-Type: text/xml');
readfile($url);
}
//UHC 인코딩을 유니코드로
function unicode($str) {
if (is_array($str)) {
$key=array_keys($str);
for ($i=count($key); $i--;)
$str[$key[$i]]=iconv('UHC', 'UTF-8', $str[$key[$i]]);
return $str;
}else
return iconv('UHC', 'UTF-8', $str);
}
//유니코드를 UHC로
function uhc($str) {
if (is_array($str)) {
$key=array_keys($str);
for ($i=count($key); $i--;)
$str[$key[$i]]=iconv('UTF-8', 'UHC', $str[$key[$i]]);
return $str;
}else
return iconv('UTF-8', 'UHC', $str);
}
}
//OpenAPI객체를 상속받는 DAUM 객체
class OpenAPI_DAUM extends OpenAPI {
var $apid;
function OpenAPI_DAUM() {
$this->apikey=array(
'tour'=>'952b930c54d69c53ab41ccc6e324a4aa72292b20',
'search'=>'54eb948b5634cb5c3a1e5ed484235aa41ee950d0',
);
$this->apid='dbfd0b9b85e2cd94b36c';
}
//할인항공권
function flight($search) {
$url='http://apis.daum.net/tour/Airline?apikey='.$this->apikey['tour'].'&apid='.$this->apid.'&output=xml&query='.urlencode($this->uhc($search));
$this->request($url);
}
//여행상품
function tourProduct($search) {
$url='http://apis.daum.net/tour/Product?apikey='.$this->apikey['tour'].'&apid='.$this->apid.'&output=xml&query='.urlencode($this->uhc($search));
$this->request($url);
}
//책검색
function book($search, $category=11) {
$url='http://apis.daum.net/search/book?apikey='.$this->apikey['search'].'&apid='.$this->apid.'&q='.urlencode($this->uhc($search)).'&cate_id='.$category;
$this->request($url);
}
//블로그
function blog($search) {
$url='http://apis.daum.net/search/blog?q=daum&result=10&start=1&output=rss&apikey='.$this->apikey['search'].'&q='.urlencode($search);
$this->request($url);
}
//카페
function cafe($search) {
$url='http://apis.daum.net/search/cafe?q=daum&result=10&start=1&output=rss&apikey='.$this->apikey['search'].'&q='.urlencode($search);
$this->request($url);
}
//신지식
function knowledge($search) {
$url='http://apis.daum.net/search/knowledge?q=daum&result=10&start=1&output=rss&apikey='.$this->apikey['search'].'&q='.urlencode($search);
$this->request($url);
}
}
//OpenAPI객체를 상속받는 NAVER 객체
class OpenAPI_NAVER extends OpenAPI {
function OpenAPI_NAVER() {
$this->apikey='fb6b429d2dd9bb7c10d4108ebdd8099d';
}
//책검색
function book($search, $category=121) {
$url='http://openapi.naver.com/search?key='.$this->apikey.'&query='.urlencode($search).'&display=10&start=1&target=book&d_catg='.$category;
$this->request($url);
}
//블로그
function blog($search) {
$url='http://openapi.naver.com/search?key='.$this->apikey.'&query='.urlencode($search).'&display=10&start=1&target=blog&sort=sim';
$this->request($url);
}
//지식인
function kin($search) {
$url='http://openapi.naver.com/search?key='.$this->apikey.'&query='.urlencode($search).'&display=10&start=1&target=kin&sort=sim';
$this->request($url);
}
}
//객체 생성
if ($mode[0] == 'DAUM')
$openapi=&new OpenAPI_DAUM();
else if ($mode[0] == 'NAVER')
$openapi=&new OpenAPI_NAVER();
//동작 스위치
if ($openapi) {
switch ($mode[1]) {
default:
$openapi->$mode[1]($_POST['search']);
break;
}
}
?>