채택완료

DB select 문 조언 구합니다.

2015-08-26 (수) 00:49:27 4,599

DB select 문 조언 구합니다.

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

table명 = ABC

Copy
<!--지도 시작 --><!--지도 끝 -->#mgmap { width: 100%; height:700px; margin:0; padding: 0px; border: 0px;}</style><div style="width:100%; text-align:center; font-size:18px;">지역 통계</div><div id="mgmap"  style="position:relative;"></div><br /><script type="text/javascript" src="http://maps.google.com/maps/api/js?v=3.exp&sensor=false&language=ko"></script>    <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();     var marker, i;     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   });        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><!--지도 끝 -->​

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

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

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

Copy
$lat=($list[$i][wr_19]);   $lng=($list[$i][wr_20]);   $address=strip_tags($list[$i][wr_18]);

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

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

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

Copy
$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"););

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

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

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

조언부탁드립니다.

|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트

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개

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

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