자바스크립트 안에서의 php변수

자바스크립트 안에서의 php변수

QA

자바스크립트 안에서의 php변수

답변 2

본문

안녕하세요.

 

제작된 소스를 수정중에 질문이 생겨 고수분들께 도움을 요청드리고자 합니다.

 

아래와 같이 스크립트 구문안에 for 문이 있습니다.

 


function poom_load_map(lat, lng, limit){
  $(".poom_ul_area").html("");
  $.ajax({
   type     : "get",
   url      : "/json.php",
   data     : "mode=map&lat="+lat+"&lng="+lng+"&limit="+limit,
   dataType : 'json',
   cache: false,
success  : function(data) {
 for(var i=0; i<data.data.length; i++) {
  var li_str = "<li data-lng='"+ data.data[i].wr_4 +"' data-lat='"+ data.data[i].wr_5 +"'>";
  li_str += "<div>";
  li_str += "<div>"+data.data[i].wr_rank+"</div>";
  li_str += "<a href='/bbs/board.php?bo_table=clinic&wr_id="+data.data[i].wr_id+"'>"+data.data[i].wr_subject+"</a>";
  li_str += "<div>"+data.data[i].wr_2+"</div>";
  li_str += "<img src='"+data.data[i].thumb_big+"' style='width:100%;'>";
  li_str += "</div>";
  <?php
  $rel_skin_file = $skin_dir.'/relation.11.skin.php';
  if(!is_file($rel_skin_file))
   $rel_skin_file = G5_SHOP_SKIN_PATH.'/relation.11.skin.php';
  $sql = " select * from {$g5['g5_shop_item_table']} where  it_use = '1' and it_1 = '$data[$i][wr_id]' ";
  $list = new item_list($rel_skin_file, 4, 0, 80, 80);
  $list->set_query($sql);
  echo $list->run();
  ?>
  li_str += "</li>";
  $(".poom_ul_area").append(li_str);
 }
},

 

스크립트안에 18번째줄부터 php가 들어 가는데요...

위 소스 중 22번째 줄의

$sql = " select * from {$g5['g5_shop_item_table']} where  it_use = '1' and it_1 = '$data[$i][wr_id]' ";

이 라인에서 맨 끝 부분의 $data[$i][wr_id]를 어떻게 바꿔서 써야 되는지 모르겠습니다.

 

php 구문이 아니라면 data.data[i].wr_id 라고 쓰면 맞는 것 같은데 이걸 쓰면 안되는 것 같고

$data.data[i].wr_id 라고 써도 안되고

$opt[wr_id]도 안되고

$opt[$i][wr_id]도 안되고 ㅠ_ㅠ

이거저거 통박으로다 찍어서 넣어봐도 다 않되네요.

 

 

위 스크립트와 연결된 php 파일은 아래와 같은 내용입니다.

 


  $i = 1;
  while($opt = sql_fetch_array($que)){
  $img = get_list_thumbnail("clinic", $opt['wr_id'], 50, 50, false, true);
  $img_big = get_list_thumbnail("clinic", $opt['wr_id'], 200, 150, false, true,"","","","1");
  $img_content = $img['src'];
  $img_big_content = $img_big['src'];
     
  $data[] = array(
   'wr_rank' => $i,
   'wr_subject' => $opt[wr_subject],
   'wr_1' => $opt[wr_1],
   'wr_2' => $opt[wr_2],
   'wr_4' => $opt[wr_4],
   'wr_5' => $opt[wr_5],
   'clinic_address' => $opt[clinic_address],
   'thumb' => $img_content,
   'thumb_big' => $img_big['src'],
 
   'distance' => round($opt[distance],2),
   'wr_id' => $opt[wr_id]
  );
  $i++;
 }

 

 

전체적인 소스의 내용은

clinic이라는 게시판에 있는 게시물을 지도에 표시해주는데 (wr_4, wr_5에 위도 경도 기록됨)

영카트 item 중 it_1 여분필드에 clinic의 wr_id 가 기록된 상품을 추출해서 보여주길 원하는 소스입니다.

 

 

 

감사합니다.

이 질문에 댓글 쓰기 :

답변 2

ajax를 조금 잘못쓰신것같습니다

 

php구문의 경우 ajax를이용할때 넘어간 경로(url)에서 처리되어야하지

 

저기서 처리될 내용이 아닌것같은데요

 

json.php에서 먼저 처리하고 처리된값을 받아오는게 맞을것같습니다

 

$list->run()의 출력값이 정상적으로 출력할 수만 있다면 문제는 없을듯합니다

 

javascript의 변수에 php값을 넣는건 쉬우나 php변수에 javascript변수를 넣는건 힘들거든요.... 다시 생각하셔야할것같습니다

아....그런거 였나요 ㅠ_ㅠ

<?php
$rel_skin_file = $skin_dir.'/relation.map.skin.php';
if(!is_file($rel_skin_file))
$rel_skin_file = G5_SHOP_SKIN_PATH.'/relation.map.skin.php';

$sql = " select * from {$g5['g5_shop_item_table']} where  it_use = '1' and it_1 = '$data[wr_id]' ";
$list = new item_list($rel_skin_file, 4, 0, 80, 80);
$list->set_query($sql);
echo $list->run();
?>
중간에 위 소스는 제가 대충 잔머리 굴려서 넣어 본 거였거든요.ㅠㅠ

'$data[wr_id]' 이 부분에 숫자 2 같은 것을 넣어보면
wr_id 값이 2인 상품들을 잘 추출해 오길래 이 부분만 잘 바꿔주면 될 줄 알았습니다.

답변 주셔서 감사드립니다. ㅠ_ㅠ

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 129,119
© SIRSOFT
현재 페이지 제일 처음으로