스크립트 거리계산 반복출력이 안됩니다..ㅠㅠ

스크립트 거리계산 반복출력이 안됩니다..ㅠㅠ

QA

스크립트 거리계산 반복출력이 안됩니다..ㅠㅠ

답변 2

본문

안녕하세요 선생님들

 

도움을 받고자 이렇게 질문을 남깁니다 ㅠㅠ

 

스크립트로 거리계산을 하는데 단일로는 출력을 잘하는데 for문안에서 반복출력이 안됩니다..

 

여분필드 wr_1에 위도 wr_2에 경도 를 저장했습니다

 

리스트에 출력하니깐 게시물마다 나오는게 아니고 마지막 1개값만 출력이 됩니다 ㅠㅠ

 

list.skin.php


<script>

var ourCoords = {
    latitude : <?php echo $list[$i]['wr_1']; ?>,  //위도
    longitude : <?php echo $list[$i]['wr_2']; ?>,  //위도
};

</script> 

 

<script type="text/javascript" src="myLoc.js"></script>


<div id="location">내위치</div>
<div id="distance">게시물위치와거리</div>

 

myloc.js 

 

window.onload = getMyLocation;

function getMyLocation() {

    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(
            displayLocation, 
            displayError); 
    } else {
        alert("내 위치 정보제공 설정이 꺼져있거나, 지원하지 않는 브라우져 입니다." );
    }
}

function displayLocation(position) {

    var latitude = position.coords.latitude;
    var longitude = position.coords.longitude;
    
    $("#location").html("내위치 위도: " + latitude +", 경도: " + longitude);
    
    var distance = computeDistance(position.coords, ourCoords);
    $("#distance").html("게시물과 "+distance+"km 떨어져 있습니다.");
                        
}

function computeDistance(startCoords, destCoords) {
    var startLatRads = degreesToRadians(startCoords.latitude);
    var startLongRads = degreesToRadians(startCoords.longitude);
    var destLatRads = degreesToRadians(destCoords.latitude);
    var destLongRads = degreesToRadians(destCoords.longitude);

    var Radius = 6371;
    var distance = Math.acos(Math.sin(startLatRads) * Math.sin(destLatRads) + 
                    Math.cos(startLatRads) * Math.cos(destLatRads) *
                    Math.cos(startLongRads - destLongRads)) * Radius;

    return distance;
}

function degreesToRadians(degrees) {
    radians = (degrees * Math.PI)/180;
    return radians;
}

이 질문에 댓글 쓰기 :

답변 2

일단 소스 자체가 반복문으로 적합하건 같지는 않네요 같은 스크립트가 반복묵으로 하신다면 반복되서 나오시는거고 값을 넣는것도 아이디로 해서 중복이신거 같네요.

수정을 하셔야 할거 같습니다.

해당소스에 반복문이 없는데요..?

답변을 작성하시기 전에 로그인 해주세요.
전체 3
© SIRSOFT
현재 페이지 제일 처음으로