값? 을 디비에 저장하기 입니다. 좀 봐주세요....네~

값? 을 디비에 저장하기 입니다. 좀 봐주세요....네~

QA

값? 을 디비에 저장하기 입니다. 좀 봐주세요....네~

본문

아래는 구글지도 입니다. 아래

 

wr_12(위도값) , wr_13(경도값) 은 저장이 됩니다. 주소 값 = formatedAddress 을 wr_17에 저장해야 하는데 어찌 하는지요

고수님 좀 부탁드립니다. 

쌩 초보라 말로만 알려주심 제가 무척 당황한답니다...;;

 

-----------생략----------

    <input type="hidden" name="wr_12" value="<?=$write['wr_12']?>"> <!--지도 x좌표-->

    <input type="hidden" name="wr_13" value="<?=$write['wr_13']?>"> <!--지도 y좌표--> 

-----------생략---------

 

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

<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>지도 미사용";

}

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 latlng = new google.maps.LatLng(<?=$write['wr_12']?>, <?=$write['wr_13']?>);

    var myOptions = {

      zoom: 16,

 scaleControl: true,

      center: latlng,

      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 latlng = getCenterLatLngText();

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

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

    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('formatedAddress').innerHTML = 'None';

      } else {

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

      }

    } else {

      document.getElementById('formatedAddress').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>

간단주소: <input type="text" id="address" size="15" onKeyDown="if(event.keyCode==13){geocode();}" />
   <input type="button" value=" 검색 " 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="latlng"></div>

 주소보기:<div id="formatedAddress"></div>

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

 

이 질문에 댓글 쓰기 :

답변 1

1. 일단데이터베이스를 연다.

2. 해당테이블에 접근한다.

3. 필드를 생성한다.

4. 그누보드를 연다.

5. 해당 스킨파일을 확장한다. ? 으잉? write_update_skin 어쩌구저쩌구 tail(중요~) 파일을 생성한다. 

음.. 파일명은 잘 몰라요 ^^ 찾으시기를 ㅎㅎ

6. 업데이트하고 싶은 값을 업데이트한다.

7. 이때중요한 것은 wr_id 값이 제대로 들어오는 지 확인!

8. wr_id 값이 있다면 업데이트.. insert 할필요가 없겠죠 ^^ 왜냐.. 이미 생성했으니깐..

9. 값이 제대로 들어오는지 다시 데이트베이스를 연다.

10. 성공~~

 

그누보드를 안 다룬지 오래된 터라 더 좋은 방법이 있을지도 모르겠네요 

아무튼 성공하세요 ㅎ

네 성공해볼게요. 아직 모르지만요. 물론 wr_id값은 있습니다. 그러니 wr_12 , wr_13 값이 저장이 되지요.
view 에 wr_12  , 13 값은 정상으로 나옵니다.
문제는 formatedAddress 값을 어떻게 해서 wr_17에 넣는것입니다. 디비에 wr_id 는 20까지 있습니ㅏㄷ.

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

회원로그인

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