소스코드 명확하게 답변좀 부탁드릴게요 ㅠㅠ
본문
http://amina.co.kr/bbs/board.php?bo_table=tip&wr_id=4148
위소스를 이용할려고하는데요
검색하는부분을 여분필드로 불러와서 자동으로 불러와지게끔 하고싶은데요
view.skin.php 스킨에서 이용할려고하는데요
여분필드를 못불러오는데
여러번 질문을 올렸는데 아직 답을 못찾았습니다
$sql = "select wr_18 from g5_write_hardbait where wr_id='".$wr_id."' ";
$view = sql_fetch($sql);
urlencode($view['wr_18'] );
이렇게 변경을 했는데도 왜 안되는건지 시원하게 답변좀 주실분 없으실까요
위 빨간색 부분이 저기안에 한글단어 넣으면 자동으로 네이버 쇼핑 가지고 오게 되는데
저렇게 넣을시는 안됩니다
<?php
@header("Cache-Control:no-cache, must-revalidate");
@header("Content-Type: text/html; charset=utf-8");
class NaverProxy {
public function queryNaver($query, $target) {
$client_id = "비번생략";
$client_secret = "비번생략";
$sql = "select wr_18 from g5_write_hardbait where wr_id='".$wr_id."' ";
$view = sql_fetch($sql);
urlencode($view['wr_18'] );
$target="shop";
$url = "https://openapi.naver.com/v1/search/shop.xml";
$url = sprintf("%s?query=%s&display=10&start=1&sort=sim&target=shop&", $url, $query);
$is_post = true;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
// curl_setopt($ch, CURLOPT_GET, $is_post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers = array();
$headers[] = "X-Naver-Client-Id: ".$client_id;
$headers[] = "X-Naver-Client-Secret: ".$client_secret;
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$data = curl_exec ($ch);
curl_close ($ch);
return $data;
}
}
$naverproxy = new NaverProxy();
// XML파일에서 원하는 항목만 추출하기 http://search.naver.comNaver Search ResultThu, 25 Jan 2018 13:05:39 +09001764410110
//echo $naverproxy -> queryNaver($_POST['query'], $_POST['target']);
$xmlstring = $naverproxy -> queryNaver($_POST['query'], $_POST['target']);
$xml = simplexml_load_string($xmlstring) or die("에러: 객체를 생성할 수 없습니다");
$items = $xml->channel->item;
if(!empty($items)){
foreach($items as $item){
echo '
<div class="shop_view">
<ul>
<li>
<a href="' . $item->link . '" target="_blank">
<div class="le">
<img src='. $item->image . ' width="80px" height="80px" /></a>
</div>
<div class="ri">
<p class="tx103">'. $item->title . '</p>
<div class="tl">
<span class="tx101">'. $item->lprice. '원 </span>
</div>
<div class="rl">
<p class="tx102">'.$item->mallName. '</p>
</div>
</div>
</li>
</ul>
</div>
'
;
}
}
?>
답변 2
$sql = "select wr_18 from g5_write_hardbait where wr_id='".$wr_id."' ";
$view = sql_fetch($sql);
이부분을 삭제하시구요
$query=urlencode($view['wr_18'] ); 이부분은
$query=urlencode($query); 로 바꾸시구요
$sql = "select wr_18 from g5_write_hardbait where wr_id='".$wr_id."' ";
$view = sql_fetch($sql);
$xmlstring = $naverproxy -> queryNaver($view['wr_18'], 'shop');
이부분 윗쪽에 아까 삭제했던 쿼리문을 넣어주세요
이렇게 한번해보세요
어고 지금 봤는데 urlencode로 인코드하고 따로 변수에 안담아주셨네요
$query=urlencode($view['wr_18'] );
위에 보여주신 링크보시면 이렇게 변수에 담아서 curl쓰는걸 보실수있습니다
당연히 저상태로는 변수에 담기지도않고 그냥 $view['wr_18']을 인코드만할뿐이지 인코드한걸 그어디에도 담지않아서 아무 동작을 할수없었던것같네요