Определите язык, используя время - PullRequest
1 голос
/ 29 мая 2011

Мне нужно определить предопределенный язык, можно будет изменить с испанского на португальский, для Испании время GMT + 2 и для Португалии GMT + 1, часовой пояс с сервера - GMT + 2, поэтому я могу узнать из в какой стране находится пользователь, и определите язык, который будет более удобным. Я думал о том, чтобы определить cookie и импортировать файл с некоторыми условиями php, используя AJAX.

Что вы предлагаете? Есть намеки?

Ответы [ 2 ]

4 голосов
/ 29 мая 2011

Было бы эффективнее использовать переменную php $_SERVER['HTTP_ACCEPT_LANGUAGE']!

1 голос
/ 29 мая 2011

Как и другие предлагают, вы должны использовать заголовок "accept-language".

Если по какой-то неизвестной причине вы действительно хотите попытаться выяснить это по часовому поясу, вы можете либо просмотреть ихстрану по IP, или с помощью API геолокации W3C, или через человека на средней странице, написав некоторый javascript, который проходит в свое время.

Поиск часового пояса через PHP и Man-In-The-Middle JS

session_start();
if($_REQUEST['user_time'])
{
    $_SESSION['user_time'] = $_REQUEST['user_time'];
}

if(!isset($_SESSION['user_time']))
{
    echo "<script type=\"text/javascript\">"; 
    echo "document.location.href = '?user_time=' + new Date().getTime();"; 
    echo "</script>";
}
else
{ 
    //normal page execution here
}

API геолокации W3C

http://dev.opera.com/articles/view/how-to-use-the-w3c-geolocation-api/

Поиск страны с использованием API геолокации Google

http://googlecode.blogspot.com/2008/08/two-new-ways-to-location-enable-your.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...