2013-11-28 2 views
2

На моей странице php я храню город пользователей, когда он приходит на мой сайт.google API javascript code внутри php

Вот API Google, который я получил из Интернета.

<script type="text/javascript" src="http://www.google.com/jsapi?key=ABQIAAAAp04yNttlQq-7b4aZI_jL5hQYPm-xtd00hTQOC0OXpAMO40FHAxQMnH50uBbWoKVHwgpklyirDEregg"></script> 
    <script type="text/javascript"> 
     if(google.loader.ClientLocation) 
     { 
      visitor_lat = google.loader.ClientLocation.latitude; 
      visitor_lon = google.loader.ClientLocation.longitude; 
      visitor_city = google.loader.ClientLocation.address.city; 
      visitor_region = google.loader.ClientLocation.address.region; 
      visitor_country = google.loader.ClientLocation.address.country; 
      visitor_countrycode = google.loader.ClientLocation.address.country_code; 
      document.getElementById('yourinfo').innerHTML = '<p>Lat/Lon: ' + visitor_lat + '/' + visitor_lon + '</p><p>Location: ' + visitor_city + ', ' + visitor_region + ', ' + visitor_country + ' (' + visitor_countrycode + ')</p>'; 
     } 
     else 
     { 
      document.getElementById('yourinfo').innerHTML = '<p>Whoops!</p>'; 
     } 
    </script> 

Мне нужно сохранить его как переменную PHP. Может кто-нибудь сказать мне, как я могу использовать его на php-странице?

Я знаю традиционный способ: echo все <html> to </html> и поставить над ним код внутри. Но хотите узнать другой лучший способ?

Я также не знаю, как назначить переменную javascript для значения php.

+0

вы можете сделать это через AJAX: http://api.jquery.com/jQuery.ajax/, а затем на сервере, сохранить свое местоположение ... – Leonardo

+0

Если вы спрашиваете, как запустить этот код JavaScript в файле '.php', вы можете просто поместить его вне тегов' ' , – Charles

+0

Возможный дубликат [Ссылка: Почему код PHP (или другой сервер) в моем Javascript не работает?] (Http://stackoverflow.com/questions/13840429/reference-why-does-the-php-or- другой-серверный код-в-мой-на JavaScript не-УНР) –

ответ

1

также не знаю, как присвоить значение javascript var значение php.

Вы не можете этого сделать, потому что Javascript запускается в клиенте, браузере и php на сервере.

1

Вы также можете легко получить данные о местоположении посетителя из IP-адреса в PHP:

<?php 
require_once("userip/ip.codehelper.io.php"); 
require_once("userip/php_fast_cache.php"); 

$_ip = new ip_codehelper(); 

$real_client_ip_address = $_ip->getRealIP(); 
$visitor_location  = $_ip->getLocation($real_client_ip_address); 

$guest_ip = $visitor_location['IP']; 
$guest_country = $visitor_location['CountryName']; 
$guest_city = $visitor_location['CityName']; 
$guest_state = $visitor_location['RegionName']; 

echo "IP Address: ". $guest_ip. "<br/>"; 
echo "Country: ". $guest_country. "<br/>"; 
echo "State: ". $guest_state. "<br/>"; 
echo "City: ". $guest_city. "<br/>"; 

?> 

Для получения дополнительной информации перейдите здесь http://www.a2zwebhelp.com/visitor-location-in-php

1

Вы не можете присвоить значение переменной Javascript для переменной PHP, потому что Javascript работает на клиентском Borwser и PHP-скрипте выполняется на сервере.

Но есть способ отправить его обратно на сервер с помощью POST или GET метод ..

Вы можете даже использовать AJAX/JQuery, чтобы сделать это.

Один из методов, который использует JQuery, является самым простым. Вот ссылка на него: http://api.jquery.com/jQuery.ajax/

Создать PHP файл на сервере называют его storecity.php

<?php 
$city = $_GET['city']; 
$user = $_GET['name']; 
// Write your code to store the variable $city into the database 
?> 

затем добавить этот код после того, как вы получите пользователя City (Примечание включить Jquery библиотеки для этого работа)

$.ajax({ 
    type: "GET", 
    url: "storecity.php", 
    data: { name: "John", city: "Boston" } 
});