以下は、ユーザー定義のデータをDBに保存するためのGoogleマップAPIですが、ユーザーの場所マーカーにフォームを読み込むために調整しました。今はsave関数が役に立たない。助けてください現在の場所からユーザー入力と場所を保存するGoogleマップAPI
マネー貸し手として登録してください。
セル: ビジネス名前: 担保:+ ラップトップ、携帯電話、テレビ。
可能な交渉 額について 給与担保ローン オープン:+ K3000 未満以上K3000
<div id="message">You have been registered as a money lender at this location.</div>
<script>
var map;
var marker;
var infowindow;
var messagewindow;
function initMap() {
var zambia = {lat: -15.376085, lng: 28.366237};
map = new google.maps.Map(document.getElementById('map'), {
center: zambia,
zoom: 7
});
var infoWindow = new google.maps.InfoWindow;
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
var pos = {
lat: position.coords.latitude,
lng: position.coords.longitude
};
infoWindow.setPosition(pos);
infoWindow.setContent(document.getElementById('form'));
infoWindow.open(map);
map.setCenter(pos);
}, function() {
handleLocationError(true, infoWindow, map.getCenter());
});
} else {
// Browser doesn't support Geolocation
handleLocationError(false, infoWindow, map.getCenter());
}
}
function handleLocationError(browserHasGeolocation, infoWindow, pos) {
infoWindow.setPosition(pos);
infoWindow.setContent(browserHasGeolocation ?
'We cant seem to find you my friend.' :
'Your browser doesn\'t support geolocation.');
infoWindow.open(map);
}
function saveData() {
var name = escape(document.getElementById('name').value);
var address = escape(document.getElementById('address').value);
var collateral = document.getElementById('collateral').value;
var type = document.getElementById('type').value;
var latlng = getCurrentPosition(pos);
var url = 'phpsqlinfo_addrow.php?name=' + name + '&address=' + address + '&collateral=' + collateral +
'&type=' + type + '&lat=' + latlng.lat() + '&lng=' + latlng.lng();
downloadUrl(url, function(data, responseCode) {
if (responseCode == 200 && data.length <= 1) {
infowindow.close();
messagewindow.open(map, marker);
}
});
}
function downloadUrl(url, callback) {
var request = window.ActiveXObject ?
new ActiveXObject('Microsoft.XMLHTTP') :
new XMLHttpRequest;
request.onreadystatechange = function() {
if (request.readyState == 4) {
request.onreadystatechange = doNothing;
callback(request.responseText, request.status);
}
};
request.open('GET', url, true);
request.send(null);
}
function doNothing() {
}
</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=API_KEY&callback=initMap">
</script>
問題はサーバー側で発生する可能性が高いので、ログを調べてその要求が受け入れられない理由を確認することをお勧めします。私の最初の推測では、lat/lngコンポーネントにはドットが含まれているのでエスケープする必要があるかもしれないということです。 – cYrixmorten
また、私は 'getPosition'のコードが表示されません。あなたのGoogle APIキーを含めないようにあなたの投稿コードを編集することを強くお勧めします。 – cYrixmorten
getCurrentPositionであるはずでした。それでも動作していません。もう一度私のキー – Mukamala