Olá pessoal, estou aqui para pedir ajuda, mas não para me dar mastigado nada, mas alguém que possa me mostrar o caminho das pedras para minha duvida.
Seguinte, como faço para o site abrir determinada área ou pagina, de acordo onde ele esta acessando?
Exemplo, se estou na cidade "B" ele abre determinada pagina, e se vou para a cidade "F" ele abre outra pagina, falo assim pq cada pagina vai possuir uma determinada consulta ao banco de dados e realizar a pesquisa em uma tabela especifica para aquela região.
Se alguém puder me ajudar e me orientar pra que lado seguir agradeço muito...
Estou tentando criar log de acessos em Banco de Dados com base em IP e Geolocalização. Para tanto estou usando um script disponibilizado por GeoIP-DB. Quando faço o teste local, dá tudo certo. Me dá a minha cidade, cep, latitude longitude... Porém, quando subo para a nuvem, ele mostra esses dados do servidor, e não os meus.
Meu código php está assim:
date_default_timezone_set('America/Sao_Paulo');
$json = file_get_contents('https://geoip-db.com/json');
$data = json_decode($json);
$cidade = $data->city;
$cep = $data->postal;
$lat = $data->latitude;
$long = $data->longitude;
$PDO = new PDO( 'mysql:host=' . HOST . ';dbname=' . DB, USER, PASS );
$sql = "INSERT INTO `stat` (`id_stat`, `cidade`, `cep`, `latitude`, `longitude`) VALUES (NULL, $cidade, $cep, $lat, $long)";
$compile = $PDO->prepare($sql);
Boa noite pessoal, estou tentando fazer um código, para mostrar um banner em meu site, quando o usuário entrar, baseado na localização dele. É basicamente o seguinte: a API de geolocalização retorna o nome da cidade, e, se for a cidade, então mostre o banner. Se não for, mostre outro. O código JavaScript que estou usando é esse:
<script type="application/javascript">
function geoip(json){
var city = document.getElementById("user_city");
city.textContent = json.city;
}
</script>
<script async src="https://get.geojs.io/v1/ip/geo.js"></script>
A cidade é: <span id="user_city"></span>
Esse código retorna o nome da cidade no <span id>.
Porém eu preciso fazer um IF, ELSE no próprio JavaScript, para mostrar o banner ou não. Seria basicamente assim:
<script type="application/javascript">
function geoip(json){
var city = document.getElementById("user_city");
city.textContent = json.city;
}
if (city == "nomedacidade") {
document.write ("<img src='banner1.jpg'></img>");
}
else {
document.write ("<img src='banner2.jpg'></img>");
}
</script>
<script async src="https://get.geojs.io/v1/ip/geo.js"></script>
O problema é que a variável city não fica setada dentro do if, não retorna o nome da cidade, eu só queria comparar no if o nome da cidade com o que a API retorna. Alguém tem alguma ideia?
Pessoal, seguinte. Eu sei somente o basicão de JS, peguei um script para obter a localização do usuário que acessar a minha página, estou testando algumas funções inicialmente para realizar outras aplicações futuras, dado que nunca utilizei essa função antes.
Dúvida 1 = Quero melhorar a precisão dos dados que irei receber do usuário, para isso já pesquisei e encontrei a seguinte função:
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
} else {
location.href="https://google.com";
}
}
function showPosition(position) {
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
var accuracy = position.coords.accuracy;
$.ajax({
method: "post",
url: "page.php",
data: {'latitude': latitude, 'longitude': longitude, 'accuracy': accuracy},
success: function(data){
location.href="https://google.com";
}
});
}
</script>
Dúvida 2 = Quando o usuário rejeitar o fornecimento de sua localização, como posso redireciona-lo par ama URL mesmo assim, sendo que na forma acima não funcionou.