Pagina 1 di 1
Salvare le coordinate dell'utente in variabili globali (navigator.geolocation)
Inviato: 26 apr 2017, 15:27
da gianpagi
Salve a tutti,
sto cercando di realizzare una applicazione che intercetti le coordinate dell'utente che accede salvandole in variabili globali (l'utente può anche non autenticarsi).
Le coordinate vengono ricavate con html5 (navigator.geolocation) e l'applicazione iniziale dovrebbe essere un modulo Dashboard accessibile a tutti (una parte in chiaro) e con menù differenti in base all'eventuale login e profilo degli utenti.
Come fare a salvare queste coordinate in delle variabili globali ?
Un saluto
Gianpaolo
Re: Salvare le coordinate dell'utente in variabili globali (navigator.geolocation)
Inviato: 26 apr 2017, 16:33
da Fabio
Io penso sia meglio usare le API di Google, piuttosto che i tag HTML5.
Così facendo puoi facilmente gestirle via php, inoltre ci sono molte più funzionalità a disposizione.
Re: Salvare le coordinate dell'utente in variabili globali (navigator.geolocation)
Inviato: 27 apr 2017, 08:43
da gianpagi
si, ma per rilevare le coordinate dell'utente che sta navigando l'unica possibilità è utilizzare html5, poi tramite le Api di Google si possono fare azioni sulla base di queste coordinate.
Ma prima devono essere salvate in delle global
Re: Salvare le coordinate dell'utente in variabili globali (navigator.geolocation)
Inviato: 27 apr 2017, 15:39
da gianpagi
Ho risolto,
ho inserito del codice nell'evento onload di una app control che poi fa una chiamata al menu che inizializza le coordinate inviate in post:
onload app control
Codice: Seleziona tutto
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title></title>
<script src="no link please:.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<!-- CUSTOM -->
<script type="text/javascript">
var latt ;
var lonn;
var redirect = '../menu/';
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(mia_posizione);
}else{
alert('La geo-localizzazione NON c possibile');
}
// jquery extend function
$.extend(
{
redirectPost: function(location, args)
{
var form = $('<form></form>');
form.attr("method", "post");
form.attr("action", location);
$.each( args, function( key, value ) {
var field = $('<input></input>');
field.attr("type", "hidden");
field.attr("name", key);
field.attr("value", value);
form.append(field);
});
$(form).appendTo('body').submit();
}
});
function mia_posizione(posizione) {
latt = posizione.coords.latitude;
lonn = posizione.coords.longitude;
$.redirectPost(redirect, {lon: lonn, lat: latt});
}
</script>
<!-- CUSTOM -->
</head>
<body>
</body>
</html>
<?php
OnLoad della app iniziale menu
Codice: Seleziona tutto
if (isset($_POST['lat'])) {
[latitudine] = $_POST['lat'];
unset ($_POST['lat']);
} else [latitudine]='non pervenuta';
if (isset($_POST['lon'])) {
[longitudine] = $_POST['lon'];
unset ($_POST['lon']);
} else [longitudine]='non pervenuta';
Saluti