테스트 사이트 - 개발 중인 베타 버전입니다

DB select 문 조언 구합니다. 채택완료

콩태마루 10년 전 조회 4,436

 

DB select 문 조언 구합니다.

아래와 같이 map.php 파일을 저장해서 특정 table에 wr_18, wr_19, wr_20 필드의 값을 불러와서 구글 좌표를 입력하게 하려고 하고 있습니다. 아.. 다중 마커 형태입니다. 게시글마다 입력된 좌표를 map.php 에 다중마커가 되는 형태입니다.

 

table명 = ABC

 

 

 </p><p> </p><p><!--지도 시작 -->
<!--지도 끝 -->
#mgmap { width: 100%; height:700px; margin:0; padding: 0px; border: 0px;}
</style></p><p><div style="width:100%; text-align:center; font-size:18px;">지역 통계</div></p><p><div id="mgmap"  style="position:relative;"></div>
</p><p><script type="text/javascript" src="<a href='<a href="http://maps.google.com/maps/api/js?v=3.exp&sensor=false&language=ko" target="_blank" rel="noopener noreferrer">http://maps.google.com/maps/api/js?v=3.exp&sensor=false&language=ko</a>"></script'><a href="http://maps.google.com/maps/api/js?v=3.exp&sensor=false&language=ko" target="_blank" rel="noopener noreferrer">http://maps.google.com/maps/api/js?v=3.exp&sensor=false&language=ko</a>"></script</a>>
    <script type="text/javascript">
  
  var locations = [
  <? for ($i=0; $i<count($list); $i++) {
   $name1=strip_tags($list[$i][subject]);
   $lat=($list[$i][wr_19]);
   $lng=($list[$i][wr_20]);
   $address=strip_tags($list[$i][wr_18]);
   $mapnum=($list[$i][wr_id]);
   $mtem="<table><tr><td colspan=2 width=300><a href={$list[$i][href]}><h3>$name1</h3></a></td></tr><tr><td width=70>주소: </td><td width=230>{$address}</td></tr></table>";
   ?>
  ['<?=$mtem?>', '<?=$lat?>', '<?=$lng?>', '<?=$mapnum?>'],
  <? if ($name1 ==  false) break ;?>
  <? } ?>
  ];
  
 function mgminfomap(){  
     var map = new google.maps.Map(document.getElementById('mgmap'), {
        zoom: 9,
        center: new google.maps.LatLng(37.566535, 126.97796919999996),
       mapTypeId: google.maps.MapTypeId.ROADMAP
     });
    
     var infowindow = new google.maps.InfoWindow();</p><p>     var marker, i;</p><p>     for (i = 0; i < locations.length; i++) {  
        marker = new google.maps.Marker({
          position: new google.maps.LatLng(locations[i][1], locations[i][2]),
          map: map
   });</p><p>        google.maps.event.addListener(marker, 'click', (function(marker, i) {
          return function() {
     infowindow.setContent(locations[i][0]);
             infowindow.open(map, marker);
          }
        })(marker, i));
     } 
 }
 google.maps.event.addDomListener(window, 'load', mgminfomap);
  </script>
<!--지도 끝 -->​</p><p> </p><p>

 

 

위에 소스는 전체 소스이구요. 아래 소스부분이 필드가 입력되는 부분입니다.

원래는 list.skin.php 파일에 넣으면 지금 형태로도 잘 구현이 되는데요.

저는 skin폴더가 아닌 다른 폴더에서 구현하려고 합니다.

 

 

 
   $lat=($list[$i][wr_19]);
   $lng=($list[$i][wr_20]);
   $address=strip_tags($list[$i][wr_18]); </p><p>

 

 

그래서 아래와 같이 DB를 불러오게 해보았는데..

이것저것 해봐도 테이블의 값을 불러오지 못하네요..

혹시 아래 구문이 어떤것이 잘못되었는지 조언 구합니다.

 

 

 
   $lat=sql_fetch("select * from g4_write_$bo_table where wr_19");
   $lng=sql_fetch("select * from g4_write_$bo_table where wr_20");
   $address=strip_tags(sql_fetch("select * from g4_write_$bo_table where wr_18");); </p><p>

 

 

table 명은 map.php?bo_table=ABC 이렇게 주소에서 지정을 해주고

해당 테이블에 wr_18 ~ wr_20 값을 불러와야 합니다..

지식이 부족하여 잘 안되네요..

 

조언부탁드립니다.

 

 

 

 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
10년 전

mysql 공부부터 한 후에 뭔가 해보려고 해야지 주먹구구식으로 컴퓨터가 돌아가나요?

아래처럼 하면 등록된 값을 모두 추출합니다

위 코드 위쪽에 넣으세요

$result =sql_query("select wr_18, wr_19,wr_20 from g4_write_$bo_table");

while($row=sql_fetch_array($result)) $list[]=$row;

?>

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

콩태마루
10년 전
답변은 감사합니다. 보시기에 어처구니 없는 주먹구구식 코드일 수 있지만 많은 시간 투자해서 그나마 만들어 놓은 코드입니다. 무작정 답을 원한게 아닌 방법을 조언 받고 싶었습니다. 충고라면 고맙게 받겠으나 공개 포럼에서 왜 그런말을 하시는지는 이해가 가지는 않는군요.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인