Я создал 2d массив для хранения моих координат (долгота, широта).
var nbPoints = 0;
var gps = new Array(20);
for (var i = 0; i < gps.length; i++) {
gps[i] = new Array(2);
}
с помощью этого кода я могу получать все координаты с каждым кликом и сохранять их в моем 2d-массиве.
map.on('click', function(e) {
lon = e.lngLat.lng;
lat = e.lngLat.lat;
gps[nbPoints][0] = lon;
gps[nbPoints][1] = lat;
nbPoints = nbPoints+1;
console.log(lon,lat);
});
и, наконец, я пытаюсь отправить все координаты из моего массив в моей базе данных содержит Id, Lon и Lat, но он отправляет только одну координату.
$("#vol").click(function(e) //envoyer tous les coords vers bdd
{
for (var i = 0 ; i < nbPoints; i++) {
posLon = gps[i][0];
posLat = gps[i][1];
console.log("parcours: "+gps[i][0]+ " " +gps[i][1]);
}
$.ajax({
type: "POST",
url: "table.php",
data: {
'lon' : posLon,
'lat' : posLat
},
success: function(){
console.log("OK");
}
});
});
это мой PHP код.
<?php
$conn = mysqli_connect('localhost', 'root', '' , 'api');
if (!$conn)
{
die("Connection failed: ".mysqli_connect_error());
}
$lon = $_POST['lon'];
$lat = $_POST['lat'];
$sql = "INSERT INTO coordonnes (lng, lat) VALUES('".$lon."','".$lat."')";
if($conn->query($sql))
{
echo "Donnes Enregistrer";
}
else
{
echo $conn->error;
}
?>