Toninho Posted March 10, 2022 at 01:31 AM Report Share #625533 Posted March 10, 2022 at 01:31 AM Olá preciso chamar um paramento cidade em uma sql. Assim, como abaixo, não funciona <script> navigator.geolocation.getCurrentPosition(function(posicao) { var url = "https://nominatim.openstreetmap.org/reverse?lat="+posicao.coords.latitude+"&lon="+posicao.coords.longitude+"&format=json&json_callback=preencherDados"; var script = document.createElement('script'); script.src = url; document.body.appendChild(script); }); function preencherDados(dados) { cidade = dados.address.city; estado = dados.address.state; pais = dados.address.country; bairro = dados.address.suburb; } </script> $cidade = \DB::select('select name from cities where name="'.$cidade.'"'); Agradeço qualquer ajuda Link to comment Share on other sites More sharing options...
M6 Posted March 10, 2022 at 11:20 AM Report Share #625534 Posted March 10, 2022 at 11:20 AM Creio que te faltam aqui algumas bases e conceitos base. O PHP é uma linguagem server side, o que quer dizer que corre no servidor. O Javascript que tens aí é uma linguagem client side, o que quer dizer que corre no cliente, neste caso, no browser do utilizador. Isto que dizer que a parte do teu código corre no browser e parte do teu código corre no servidor, tens de arranjar uma forma de ambas as partes comunicarem. Se reparares bem, mais que não fosse, a variável cidade nem sequer tem o mesmo nome em ambos os locais, em Javacript chama-se "cidade" e no PHP chama-se "$cidade". Se queres ver o que pretendes fazer para desenhar uma arquitetura que sirva o teu propósito. Isto pode passar por teres um formulário que faz POST para o servidor e onde podes receber o valor da variável de Javascript no PHP ou pode ser um AJAX que o faça automáticamente em segundo plano, mas só tu poderás decidir o que é melhor para o teu caso. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to comment Share on other sites More sharing options...
Toninho Posted March 10, 2022 at 06:15 PM Author Report Share #625537 Posted March 10, 2022 at 06:15 PM Obrigado! Eu faço assim, mas queria evitar redirect, pode me ajudar? <script> navigator.geolocation.getCurrentPosition(function(posicao) { var url = "https://nominatim.openstreetmap.org/reverse?lat="+posicao.coords.latitude+"&lon="+posicao.coords.longitude+"&format=json&json_callback=preencherDados"; var script = document.createElement('script'); script.src = url; document.body.appendChild(script); }); function preencherDados(dados) { cidade = dados.address.city; estado = dados.address.state; pais = dados.address.country; bairro = dados.address.suburb; if(cidade){ window.location='/geolocate.php?lat=' + cidade; } } </script> Link to comment Share on other sites More sharing options...
M6 Posted March 11, 2022 at 08:23 AM Report Share #625540 Posted March 11, 2022 at 08:23 AM Se não queres fazer um redirect podes usar uma chamada ajax com json para contactar o servidor e obter a resposta. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now