Вставьте местоположение HTML5 в базу данных MySQL

Я хотел бы вставить HTML5 местоположение пользователя в базу данных. Поэтому в основном я хочу, чтобы он отправлял место, где находится пользователь, когда он / она нажимает «Отправить».

HTML5 код местоположения:

var x = document.getElementById("demo");

function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}

function showPosition(position) {
x.innerHTML = "Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}

Мой текущий код:

$post = filter_input(INPUT_POST, 'post', FILTER_SANITIZE_SPECIAL_CHARS);
$name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_SPECIAL_CHARS);

INSERT INTO news (post, name, date, location) VALUES ('".$post."', '".$name."', '".date('Y-m-d H:i:s')."', '".$location."')

0

Решение

Для этого вам понадобится Ajax-вызов, такой как:

function postData(phpFile, newData){
$.ajax({
type: 'POST',
data: newData,
url: phpFile,
success: function(data) {
},
error: function() {}
});
}

При нажатии кнопки отправки вы позвоните
postData (‘yoursavephpfile.php’, {«location»: getLocation ()});
через атрибут onclick. (Предполагая, что ваш getLocation возвращает значение местоположения)
ПРИМЕЧАНИЕ: не забудьте добавить последнюю версию jquery в ваш заголовок:

<script src="http://code.jquery.com/jquery-latest.min.js"type="text/javascript"></script>

Ваш php файл будет выглядеть так:

<?php

$location = $_POST['location'];
//Then perform your query here......
?>
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]