Creé/obtuve un código que obtendrá una ubicación con un script java. La idea es que envíe automáticamente un correo electrónico a alguien con la ubicación del Javascript. Sin embargo, ¿cómo obtendría la ubicación en el correo electrónico y cómo haría que se envíe automáticamente?
mi código es:
<!DOCTYPE html> <html> <head> <title>TestPage</title> </head> <body> <h1>Test</h1> <p>Your Loaction: <p id="demo"></p> <script> var x = document.getElementById("demo"); function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition, showError); } else { x.innerHTML = "Geolocation is not supported by this browser."; } } function showPosition(position) { x.innerHTML = "Latitude: " + position.coords.latitude + "<br>Longitude: " + position.coords.longitude; } function showError(error) { switch(error.code) { case error.PERMISSION_DENIED: x.innerHTML = "User denied the request for Geolocation." break; case error.POSITION_UNAVAILABLE: x.innerHTML = "Location information is unavailable." break; case error.TIMEOUT: x.innerHTML = "The request to get user location timed out." break; case error.UNKNOWN_ERROR: x.innerHTML = "An unknown error occurred." break; } } window.onload = getLocation(); </script> <?php $to = 'example@example.com'; $subject = 'Subject'; $message = 'Your location is' <p id="demo">''</p>; mail($to, $subject, $message,); ?> </body> </html>Así que quiero que el php envíe automáticamente y coloque la ubicación en el correo electrónico, ¿es esto posible? alguien sabe como?
¡Muchas gracias!
Estás mezclando PHP y JavaScript.
PHP se ejecuta en el servidor, LUEGO se envía el resultado al cliente y se renderiza, LUEGO se ejecuta JavaScript. Su código no es sintácticamente correcto (debido a la etiqueta <p> alrededor de la cadena de PHP), pero incluso si lo fuera, simplemente enviaría un correo electrónico cada vez que alguien solicita la página web, sin importar si la miran o si tienen habilitado JavaScript o geolocalización.
Lo que desea, por el motivo que sea, son dos páginas separadas: la HTML + JavaScript que intentará obtener la ubicación del usuario y un script PHP. El código JavaScript deberá enviar una solicitud AJAX al script PHP con la ubicación, una vez que la haya obtenido.