혹시 이런게 뜨는거 왜그런지 알수 있을까요?? 꼭 좀 봐주세요!
본문
현재 다음뉴스송고를 계속사용중이었는데요.. 그누보드4에서 그누보드5로 갈아탄후에, 송고를 테스트해보았는데 잘전송되다가 갑자기 xml쪽에 에러가 떠서요.
가이드. http://cp.news.search.daum.net/partner/guide_tech
송고 기사 URL : 정상
송고 기사 XML URL : Response Header 중 Content-Type 정보에 UTF-8 로 설정해야 합니다. (application/xml; charset=utf-8) <----- 요렇게 뜨는데 왜그런걸까요?
아래소스는 제가 사용하는 xml소스입니다.
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE NEWS
PUBLIC "-//view.daum.net//DTD NewsML 1.1//EN"
"http://cp.news.search.daum.net/resources/dtd/newsxml-1.1.dtd">
<NEWS ver="1.1" act="C" orgid="182629">
<DATETIME><?=date("F j, Y", strtotime($view[wr_datetime]))?></DATETIME>
<WRITER_LIST>
<WRITER>
<NAME><?=$view[name]?></NAME>
<EMAIL><?=$view[wr_email]?></EMAIL>
</WRITER>
</WRITER_LIST>
<CATEGORY_LIST>
<CODE>soccer</CODE>
</CATEGORY_LIST>
<TITLE><?=$view[wr_subject]?></TITLE>
<SUB_TITLE><![CDATA[작은 제목]]></SUB_TITLE>
<TEXT><![CDATA[]]>
</TEXT>
<IMG_LIST>
<IMG>
<URL><?=$view[file]?></URL>
<DESC><![CDATA[이미지 설명]]></DESC>
</IMG>
<IMG>
<URL><![CDATA[http://이미지가/있는/서버/주소/1342968.jpg]]></URL>
<DESC><![CDATA[이미지 설명]]></DESC>
</IMG>
</IMG_LIST>
<VOD_LIST>
<VOD><![CDATA[http://동영상이/있는/서버/주소/20070201_13.wmv]]></VOD>
</VOD_LIST>
<EXT>
<OUTLINK><![CDATA[http://해당/기사/언론사측/주소/]]></OUTLINK>
<COPYRIGHT><![CDATA[저작권 문구]]></COPYRIGHT>
<RELATED_NEWS_LIST>
<RELATED_NEWS>
<SUBJECT><![CDATA[관련기사제목]]></SUBJECT>
<RELATED_NEWS_URL><![CDATA[http://www.purpress.com/]]></RELATED_NEWS_URL>
</RELATED_NEWS>
<RELATED_NEWS>
<SUBJECT><![CDATA[관련기사제목]]></SUBJECT>
<RELATED_NEWS_URL><![CDATA[http://해당/기사/언론사측/주소/]]></RELATED_NEWS_URL>
</RELATED_NEWS>
</RELATED_NEWS_LIST>
</EXT>
</NEWS>
답변 2
아래와 같이 하면 되지 않을까요?
자세한 내용은 담당자에게 문의해보시면 좋을 듯 싶습니다.
----------------
<?php
header('Content-type: text/xml; charset=utf-8'); //xml 헤더 정의
$date = date("YmdHis", strtotime($view['wr_datetime'])); // 기사 작성 날짜 20070201210000
$wr_name = "홍길동 기자"; // $view['name'];
$wr_email = "이메일주소"; //
$wr_subject = "기사 제목 테스트"; // $view[wr_subject]
$wr_subject = strip_tags(preg_replace('~\<style(.*)\>(.*)\<\/style\>~', '', $wr_subject));
$wr_content = "기사 내용";
$wr_content = strip_tags(preg_replace('~\<style(.*)\>(.*)\<\/style\>~', '', $wr_content));
$image_file_link = "http://이미지가/있는/서버/주소/1342968.jpg"; // $view['file']; // 이미지 파일명 형태의이미지 url
$vod_link = "http://동영상이/있는/서버/주소/20070201_13.wmv"; // 동영상 url
$gisa_link = "http://해당/기사/언론사측/주소"; // 기사 원문 URL
$xml = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n"; //xml 상단에 무조건 있어야하는 코드
$xml = '<!DOCTYPE NEWS PUBLIC "-//view.daum.net//DTD NewsML 1.1//EN" "http://cp.news.search.daum.net/resources/dtd/newsxml-1.1.dtd">';
$xml .= "<NEWS ver='1.1' act='C' orgid='182629'>";
$xml .= "<DATETIME>".$date."</DATETIME>";
$xml .= "<WRITER_LIST>";
$xml .= "<WRITER>";
$xml .= "<NAME>".$wr_name."</NAME>"; // 작성자
$xml .= "<EMAIL>".$wr_email."</EMAIL>"; // 이메일
$xml .= "</WRITER>";
$xml .= "</WRITER_LIST>";
$xml .= "<CATEGORY_LIST>";
$xml .= "<CODE>soccer</CODE>";
$xml .= "</CATEGORY_LIST>";
$xml .= "<TITLE><![CDATA[$wr_subject]]></TITLE>";
$xml .= "<SUB_TITLE><![CDATA[작은 제목]]></SUB_TITLE>";
$xml .= "<TEXT><![CDATA[$wr_content]]></TEXT>";
$xml .= "<IMG_LIST>";
$xml .= "<IMG>";
$xml .= "<URL><![CDATA[$image_file_link]]></URL>";
$xml .= "<DESC><![CDATA[이미지 설명]]></DESC>";
$xml .= "</IMG>";
$xml .= "</IMG_LIST>";
$xml .= "<VOD_LIST>";
$xml .= "<VOD><![CDATA[$vod_link]]></VOD>";
$xml .= "</VOD_LIST>";
$xml .= "<EXT>";
$xml .= "<OUTLINK><![CDATA[$gisa_link]]></OUTLINK>";
$XML .= "<COPYRIGHT><![CDATA[저작권 문구]]></COPYRIGHT>"; // 저작권 문구
$xml .= "<RELATED_NEWS_LIST>";
$xml .= "<RELATED_NEWS>";
$xml .= "<SUBJECT><![CDATA[관련기사제목]]></SUBJECT>";
$xml .= "<RELATED_NEWS_URL><![CDATA[http://해당/기사/언론사측/주소/]]></RELATED_NEWS_URL>";
$xml .= "</RELATED_NEWS>";
$xml .= "</RELATED_NEWS_LIST>";
$xml .= "</EXT>";
$xml .= "</NEWS>";
echo $xml;
?>
제가 보기에도 위처럼 하면 될거 같네요.
만약 안된다면 쪽지 주세요.
답변을 작성하시기 전에 로그인 해주세요.