웹마스터 팁

http://search.dyd.cc/shop.php?q=%EA%B0%80%EC%A0%84&start=1&display=5네이버의 openapi에서 키를 받으셔야 사용할수 있습니다.

궁금한 점은 http://openapi.naver.com/15.html 이곳에서 확인하세요.

결과가 간단하므로 복잡하게 처리하지 않고 간단하게 처리햇습니다.
php에서 fopen()을 지원하는 환경에서만 가능합니다.

파일저장을 UTF-8 로 하여야만 에러가 나지 않습니다.

이하 소스
-----------------------------------------------------------------------------------------------------------

<?php

$q =  (!empty($_GET['q'])) ? $_GET['q'] : '';
$q_decode = (!empty($q)) ? stripslashes(urldecode($q)) : '';
$q_enocde = urlencode($q);

$start =  (!empty($_GET['start']) && is_numeric($_GET['start'])) ? $_GET['start'] : 1;
$display =  (!empty($_GET['display']) && is_numeric($_GET['display'])) ? $_GET['display'] : 5;

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<title> 쇼핑 검색 </title>
</head>

<body>
<center>
<form method='GET'>
<input type=text name='q' value='+ '<?=$q_decode?>'> <input type='submit' value='search'>

start <input type=text name='start' value='<?=$start?>' size=3>
display <input type=text name='display' value='<?=$display?>' size=3>
</form>
<table width=600 border=1 cellspacing=3>
<?php

if (!empty($q_decode)) {

  $naver_openapi_key = '자신이 네이버에서 발급받은 키를 넣으세요';
  $file = 'http://openapi.naver.com/search?key=' . $naver_openapi_key . '&query=' . $q_enocde . '&display=' . $display . '&start=' . $start . '&target=shop&sort=sim';
  $fp = fopen($file, 'r') or die($file . ' not found');

  $text = '';
  while($data = fread($fp, 4096)){

    $text .= $data;
  }

  fclose($fp);

  preg_match_all("`<item>[^<]*<title>([^<]*)</title>[^<]*<link>([^<]*)</link>[^<]*(<image>([^<]*)</image>)?(<image/>)?[^<]*(<lprice>([^<]*)</lprice>)?(<lprice/>)?[^<]*(<hprice>([^<]*)</hprice>)?(<hprice/>)?[^<]*(<description>([^<]*)</description>)?(<description/>)?`s", $text, $matches);

  if (is_array($matches[1]) && count($matches[1]) > 0){

    foreach($matches[1] as $key => $val){

      //title
      $title = str_replace(array("<", ">"), array("<", ">"), $val);
      
      //link
      $link = $matches[2][$key];
      
      //image
      if (empty($matches[4][$key])) $image = '정보없음';
      else $image = "<img src='" . $matches[4][$key] . "'>";

      //lprice
      if (empty($matches[7][$key])) $lprice = '정보없음';
      else $lprice = number_format($matches[7][$key]) . " 원";

      //hprice
      if (empty($matches[10][$key])) $hprice = '정보없음';
      else $hprice = number_format($matches[10][$key]) . " 원";

      //description
      if (empty($matches[13][$key])) $description = '정보없음';
      else $description = str_replace(array("<", ">"), array("<", ">"), $matches[13][$key]);

      echo "<tr align='center'>";
      echo "<td width='100'> <a href='" . $link . "' target='_blank'>" .  $title . "</a> </td>";
      echo "<td width='180'>" . $image . "</td>";
      echo "<td width='100'>" . $lprice . "<br>" . $hprice . "</td>";
      echo "<td>" . $description . "</td>";
      echo "</tr>";
    }
  }
  else echo "<tr><td>검색결과 없음</td></tr>";
}
else echo "<tr><td>검색어를 입력하세요</td></tr>";

?>
</table>
<br><a href='http://openapi.naver.com/'+ ' target='_blank'>네이버 OPENAPI 사용</a>
</center>
</body>
</html>
-----------------------------------------------------------------------------------------------------------

utf-8 환경에서만 사용가능합니다.

데모로 걸은 링크 사이트는 며칠후에는 안보일수 있습니다
http://search.dyd.cc/shop.php?q=%EA%B0%80%EC%A0%84&start=1&display=5

제목 글쓴이 날짜
'검색'창에 페이지 띄우기 [8] KLclub 2006.05.14
날씨/운세/뉴스/달력/검색등 메인용 귀연 정보박스[미리보기] [12] 뽀因㉦ㅓо Ø Γ 2006.07.19
자신의 홈페이지에 웹문서 검색엔진 장착하기 [4] 지하넷 2009.05.04
통합 검색엔진 소스입니다. [5] 철혈단 2003.02.19
내 홈페이지에 유명사이트 검색엔진을 달자...(네이버,다음,야후 등등) [3] 트래비스 2006.05.10
[소스] 개발자,디자이너 전용 통합검색 스크립트 [1] 김성대 2006.05.19
고글검색하기!! [7] 김민환 2006.10.30
간단한 검색 창입니다. [3] sunholic 2007.03.31
자신의 홈피에 통합 검색 순위 (검색어, 음악, 영화, 도서)를 달아보자. [1] Rising.kr 2008.01.21
자신의 홈페이지에 (검색,사전,로또,주식) 통합버전을 넣어보자. [3] Rising.kr 2008.01.21
파일시스템(배열)에서의 검색기능 [5] 두기두바 2002.01.09
[수정본]MP3파일를 검색하여 윈앰프로 실시간 감상하기 제누스 2002.03.28
제가 쓰는 mysql 검색알로리즘 입니다. [5] 콩알™ 2002.05.20
이젠 주소검색 편하게쓰자~~~!! (새창띄우지 않습니다) [5] _-=Knight=-_ 2003.03.05
php 랜덤 이미지 디렉토리 검색으로 편하게.. [3] 꺼노 2003.08.28
[PHP 동영상강의] 45. 우편번호 검색기 제작해보기 [12] 서기 2006.03.30
[PHP 동영상강의] 46. 다중검색기 제작해보기 [8] 서기 2006.04.06
네이버 openapi 사용하여 실시간 인기검색어 보여주기 [3] 유창화 2006.04.13
네이버 openapi 사용하여 쇼핑검색 만들기 [3] 유창화 2006.04.13
apache 1.3.x-2.0.48 의 원격 유저 검색 취약점을 이용한 exploit [2] DearMai 2003.12.27