구글 맵 게시판을 이용하는데 전체가가 다 나오게 하는방법?

구글 맵 게시판을 이용하는데 전체가가 다 나오게 하는방법?

QA

구글 맵 게시판을 이용하는데 전체가가 다 나오게 하는방법?

본문

아래 형태의 게시판을 이용하고 있습니다. 그런데 목록 리스트 수를 페이지당 15개로 정하면 지도에도 15개만 나옵니다. 목록 리스트 수는 15개로 지정 되어 있어도 지도에는 입력된 글들이 표시되게 하려면 어떻게 해야 될까요?

 

궁굼합니다 ㅠㅠ

 

 

아래는 지도에 관련 코드 입니다

 


 
<div id="mgmap"></div>
 
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&language=ko®ion=kr&key=키값"></script> 

<script src="<?=$board_skin_url?>/markerclusterer.js" type="text/javascript"></script>  
<script type="text/javascript">
var map;
var ymakcur;
var ymakcurOptions = {styles:[{
 height: 20,
 width: 20,
    url: '<?=$board_skin_url?>/img/ymc1.png',
 }],gridSize: 1, maxZoom: 1};
var infowindow = new google.maps.InfoWindow();
var geocoder = new google.maps.Geocoder();
var bounds = new google.maps.LatLngBounds();
var ymakerimg = '<?php echo $board_skin_url ?>/img/mapicon001.png';
var address = new Array(
 <? for ($i=0; $i<count($list); $i++) {
 $ylat=($list[$i][wr_4]);
 $ylng=($list[$i][wr_5]);
 ?>
 "<?=$ylat?>,<?=$ylng?>"
 <? if ($i==count($list)-1) continue; ?>
 ,
 <? } ?>
);
var ca_name = new Array(
 <? for ($i=0; $i<count($list); $i++) {
 $ca_name=($list[$i][ca_name]);
 ?>
 "<?=$ca_name?>"
 <? if ($i==count($list)-1) continue; ?>
 ,
 <? } ?>
);
var content = new Array(
 <? for ($i=0; $i<count($list); $i++) {
 $name1=strip_tags($list[$i][wr_subject]);
 $address=strip_tags($list[$i][wr_2]);
 $etc=strip_tags($list[$i][wr_7]);
 $byul=strip_tags($list[$i][wr_8]);
 $hit=strip_tags($list[$i][wr_hit]);
 
 $bylink=($list[$i][wr_id]);
 $mtem="<a href={$list[$i][href]} target=_blank><strong>$name1</strong></a></p>$etc</p>$byul ($hit)";
 ?>
 "<?=$mtem?>"
 <? if ($i==count($list)-1) continue; ?>
 ,
 <? } ?>
);
var min = .999999;
var max = 1.000001;
function createMarker(latlng,text,ymakerimg) {
 
 var marker = new google.maps.Marker({
    position: latlng,
 icon : ymakerimg,
    map: map
   });
    bounds.extend(latlng);
   map.fitBounds(bounds);
 var allMarkers = ymakcur.getMarkers();
 if (allMarkers.length != 0) {
     for (i=0; i < allMarkers.length; i++) {
   var existingMarker = allMarkers[i];
   var pos = existingMarker.getPosition();
   if (latlng.equals(pos)) {
    text = text + "<hr>" + content[i];
   }
  }
 }
 google.maps.event.addListener(marker, 'click', function() {
  infowindow.close();
  infowindow.setContent(text);
  infowindow.open(map,marker);
  });
 ymakcur.addMarker(marker);
 return marker;
}
var options = {
 zoom: 4,
 mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('mgmap'), options);
var ycmarkers = [];
ymakcur = new MarkerClusterer(map, [], ymakcurOptions);
for (i=0; i<address.length; i++) {
 var ymSarang = address[i];
 var jumcok = ymSarang.split(",");
 var latlng = new google.maps.LatLng(parseFloat(jumcok[0]),parseFloat(jumcok[1]));
 if(ca_name[i]=="관공서"){
  var ymakerimg = '<?php echo $board_skin_url ?>/img/icon01.png';    // 화살표 이미지
 }else if(ca_name[i]=="기관"){
  var ymakerimg = '<?php echo $board_skin_url ?>/img/icon19.png';     // 화살표 이미지
 }else if(ca_name[i]=="병원"){
  var ymakerimg = '<?php echo $board_skin_url ?>/img/icon02.png';     // 화살표 이미지
 }else if(ca_name[i]=="기타"){
  var ymakerimg = '<?php echo $board_skin_url ?>/img/icon03.png';     // 화살표 이미지
 }
 
 ycmarkers.push(createMarker(latlng,content[i],ymakerimg));
}
zoomChangeBoundsListener = google.maps.event.addListener(map, "bounds_changed",function(event){
 if(this.getZoom() > 20)
 this.setZoom(16);
 google.maps.event.removeListener(zoomChangeBoundsListener);
});
 
  </script>
 

 

관심 갖어주셔서 감사합니다~

 

이 질문에 댓글 쓰기 :

답변 1

 

$sql = "select * from g5_write_게시판id where wr_is_comment = 0 order by wr_num, wr_reply;";

$result = sql_query($sql);

while ($row = sql_fetch_array($result)){

$m_list[] = $row;

}

이런식으로 게시물의 전체 데이터를 배열로 담으셔서 위와같은 소스를 출력하시면 될거 같습니다

 

소스를 list.skin.php 상단에 놓으시고 list부분을 m_list로 변경하시면 동작될거라 보이네요

 

 

 

$list변수로 돌리시면 해당 1페이지 설정값까지만 값이 불러와집니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,680 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT