혹시 이런게 뜨는거 왜그런지 알수 있을까요?? 꼭 좀 봐주세요!
현재 다음뉴스송고를 계속사용중이었는데요.. 그누보드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 NEWSPUBLIC "-//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개 / 댓글 3개
아래와 같이 하면 되지 않을까요?
자세한 내용은 담당자에게 문의해보시면 좋을 듯 싶습니다.
----------------
<?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; ?>
답변에 대한 댓글 3개
제가 알기로는 다음 뉴스검색을 연동하기 위해서는 xml 파일을 생성하고, img 태그를 이용해 해당 xml 파일을 호출시키는 방식으로 전송하는 것으로 알고 있습니다.
자세한 내용은 가이드라인을 참고하여 주세요.
식으로 구성해서 $_GET 으로 전송받은 값을 기반으로 DB에서 데이터를 찾아 출력시키는 방식으로 가셔도 될 듯 싶습니다.
제가 보기에도 위처럼 하면 될거 같네요.
만약 안된다면 쪽지 주세요.
답변을 작성하려면 로그인이 필요합니다.