구글지도 wr_17값이 디비에 저장이 안됩니다. 코드좀...

구글지도 wr_17값이 디비에 저장이 안됩니다. 코드좀...

QA

구글지도 wr_17값이 디비에 저장이 안됩니다. 코드좀...

본문

구글지도 관련입니다. wr_14값 wr_12/wr_13값은 db에 저장이 되어 보여집니다.

근데 wr_17값은 저장이 안됩니다. wr_16도요 wr_16은 저장안되도 되며 wr_17값을 디비에 저장하려면 어찌하는지요.

물론 wr_17필드는 있고 원래는 <div id="formatedAddress"></div>이것인데 제가 "formatedAddress" 을 "wr_17"로 수정했습니다. 

쌩 초보입니다.

고수님!  좀 봐주심 대단히 감사하겠습니다. 꾸~벅

 

<table align="center" cellpadding="0" cellspacing="0" width="100%">

<tr><td>지도<br>

<? 

if($write[wr_14] != '미사용') {

echo "<input type='radio' id=r1 name='wr_14' value='사용' checked>지도 사용";

echo "<input type='radio' id=r2 name='wr_14' value='미사용'>지도 미사용";

} else {

echo "<input type='radio' id=r1 name='wr_14' value='사용'>지도 사용";

echo "<input type='radio' id=r2 name='wr_14' value='미사용' checked>지도 미사용";

}

?>

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=ko"></script>

<?

if ($write['wr_12']=='') $write['wr_12']='35.207327';

if ($write['wr_13']=='') $write['wr_13']='129.000475';

?>

<script type="text/javascript">

// 구글지도

  var map;

  var geocoder;

  var centerChangedLast;

  var reverseGeocodedLast;

  var currentReverseGeocodeResponse;

 

  function initialize() {

    var wr_16 = new google.maps.LatLng(<?=$write['wr_12']?>, <?=$write['wr_13']?>);

    var myOptions = {

      zoom: 17,

 scaleControl: true,

      center: wr_16,

      mapTypeId: google.maps.MapTypeId.ROADMAP

    };

    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    geocoder = new google.maps.Geocoder();

 

// 리스너 Listener ////////////////////////////////////////////////////

    google.maps.event.addListener(map, 'zoom_changed', function() {

document.getElementById("zoom_level").innerHTML = map.getZoom();

 

zoomLevel = map.getZoom(); 

if (zoomLevel > 19) { 

 map.setZoom(19); 

}   

if (zoomLevel < 1) { 

 map.setZoom(1); 

}   

    });

 

    setupEvents();

    centerChanged();

  }

 

  function setupEvents() {

    reverseGeocodedLast = new Date();

    centerChangedLast = new Date();

 

    setInterval(function() {

      if((new Date()).getSeconds() - centerChangedLast.getSeconds() > 1) {

        if(reverseGeocodedLast.getTime() < centerChangedLast.getTime())

          reverseGeocode();

      }

    }, 1000);

 

    google.maps.event.addListener(map, 'center_changed', centerChanged);

 

    google.maps.event.addDomListener(document.getElementById('crosshair'),'dblclick', function() {

       map.setZoom(map.getZoom() + 1);

    });

  }

  function getCenterLatLngText() {

var nn = 1000000;

var tmpLat = Math.round(map.getCenter().lat()*nn)/nn;

var tmpLng = Math.round(map.getCenter().lng()*nn)/nn;

 

document.fwrite.wr_12.value = tmpLat;

document.fwrite.wr_13.value = tmpLng;

 

    return tmpLat +', '+ tmpLng;

  }

 

  function centerChanged() {

    centerChangedLast = new Date();

    var wr_16 = getCenterLatLngText();

    document.getElementById('wr_16').innerHTML = wr_16;

    document.getElementById('wr_17').innerHTML = 'wr_17';

    currentReverseGeocodeResponse = null;

  }

 

  function reverseGeocode() {

    reverseGeocodedLast = new Date();

    geocoder.geocode({latLng:map.getCenter()},reverseGeocodeResult);

  }

 

  function reverseGeocodeResult(results, status) {

    currentReverseGeocodeResponse = results;

    if(status == 'OK') {

      if(results.length == 0) {

        document.getElementById('wr_17').innerHTML = 'None';

      } else {

        document.getElementById('wr_17').innerHTML = results[0].formatted_address;

      }

    } else {

      document.getElementById('wr_17').innerHTML = 'Error';

    }

  }

 

  function geocode() {

    var address = document.getElementById("address").value;

    geocoder.geocode({

      'address': address,

      'partialmatch': true}, geocodeResult);

  }

 

  function geocodeResult(results, status) {

    if (status == 'OK' && results.length > 0) {

      map.fitBounds(results[0].geometry.viewport);

    } else {

      alert("Info: " + status);

    }

  }

</script>

<br>

간단주소검색: <input type="text" id="address" size="40" onKeyDown="if(event.keyCode==13){geocode();}" />

   <input type="button" style = "cursor: pointer;" value=" Go " onclick="geocode()">

</div>

  <div id="map">

<div id="map_canvas" style="width:<?=$map_width?>px; height:<?=$map_height?>px;"></div>

    <div id="crosshair"></div>

 

 <br>

 위도/경도:<div id='wr_16' name="wr_16" readonly style="font-family:돋움; font-size:17px; background-color:white; margin:1px; padding:1px; border-width:2px; border-color:blue; border-style:dashed;"></div>

 주소검색보기:<div id="wr_17" type="text" name="wr_17"  style="font-family:돋움; font-size:17px; background-color:white; margin:1px; padding:1px; border-width:2px; border-color:blue; border-style:dashed;"></div>

</td></tr></table> 

이 질문에 댓글 쓰기 :

답변 2

​<div id="formatedAddress"></div> 요거랑 wr_16, wr_17 기존껄로 다시 복원 하신 담에  

 

 

아래 내용 다시 넣으시고요. 


  <input type='hidden' name="wr_16" id="wr_16" value="">
  <input type='hidden' name="wr_17" id="wr_17" value=""> 

 

innerHTML 하시는 부분에 다시 value값으로 입력하게끔 추가 하시면 됩니다. 

document.getElementById('wr_17').value = '값';

 

즉, innerHTML 은  화면에 출력되는 부분을 설정하는 거구요.

value 는 DB에 들어갈 값을 입력하는 곳입니다.

 

그리고 한 페이지에서는 중복된 id를 사용하시면 에러가 날수 있습니다. id는 중복없이 사용하시면 됩니다.

 

기본적인 개념없이 작업하시는 좀 어려운 작업을 하고 계시네요. 

못 알아 먹어서 답답하죠.....
전 못 알아서 미치께네용......죄송하지만
document.getElementById('wr_17').value = '값'; 이것을 어디에 적용해야 하는지요...
정말 죄송합니다 답답해도 좀 봐 주세용...^^

document.getElementById('wr_16').innerHTML = wr_16;
    document.getElementById('wr_17').innerHTML = 'wr_17';

위에 소스를 예를 들어서 wr_16, wr_17에 innerHTML 하는 부분에
.value 를 추가하시면 됩니다.

기존에 작성하신 wr_16, wr_17은 이전껄로 복구 하시고요.

<div>는 입력필드가 아닙니다.

 

<input type='hidden' name='wr_16' id='wr_16' value='값'>

<input type='hidden' name='wr_17' id='wr_17' value='값'>

 

 

갑을 받으셔야 합니다. 

 

네 그럼 어찌해야 하는지요
--------생략-----
    <input type="hidden" name="wr_12" value="<?=$write['wr_12']?>"> <!--지도 x좌표-->
    <input type="hidden" name="wr_13" value="<?=$write['wr_13']?>"> <!--지도 y좌표-->
  <input type='hidden' name="wr_16" id="wr_16" value="">
    <input type='hidden' name="wr_17" id="wr_17" value="">
------생략------
이렇게 하니 아예 않고
  <input type='hidden' name="wr_16" id="wr_16" value="">
    <input type='hidden' name="wr_17" id="wr_17" value="">
삭제하면 나옵니다.

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

회원로그인

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