Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
0 / 0 / 0
Регистрация: 11.01.2013
Сообщений: 24

Определение страны и перенаправление

18.05.2014, 18:21. Показов 3976. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравстуйте. Подскажите пожалуйста как сделать следующее: У меня на сайте есть 2 языка русский и английский. Как можно сделать так, чтоб людей с Америки и т.п перенаправляло на одну ссылку, а со всех остальных стран перенаправляло на другую.

Заранее благодарен за помощь.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.05.2014, 18:21
Ответы с готовыми решениями:

Определение страны по IP
Определяю страну на сторонним сервисе: if( $curl = curl_init() ) { $ip = $_SERVER; ...

Определение страны php (добавление условия)
В общем я использую данный код для проверки страны пользователя сайта. if( $curl = curl_init() ) { $ip = $_SERVER; ...

Определение Координат, Часового пояса и Валюты страны\города
Собственно по сабжу. Нашел как найти координаты, которые находятся даже при наличии только названия города: (пример) ...

9
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
18.05.2014, 18:48
Цитата Сообщение от nordx Посмотреть сообщение
Как можно сделать так, чтоб людей с Америки и т.п перенаправляло на одну ссылку, а со всех остальных стран перенаправляло на другую.
Определять страну по IP.
0
0 / 0 / 0
Регистрация: 11.01.2013
Сообщений: 24
18.05.2014, 18:51  [ТС]
pav1uxa, что вы хотите сказать этим? название? мне оно нужно?

Я спрашиваю совет как это все правильно реализовать
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
18.05.2014, 18:59
Цитата Сообщение от nordx Посмотреть сообщение
pav1uxa, что вы хотите сказать этим? название? мне оно нужно?
Название чего?
Цитата Сообщение от nordx Посмотреть сообщение
Я спрашиваю совет как это все правильно реализовать
Так я Вам и отвечаю. Определять по IP страну. Если это Russian Federation то перенаправлять на одну страницу, если это United States то на другую.

В чем конкретно проблема?
0
0 / 0 / 0
Регистрация: 11.01.2013
Сообщений: 24
18.05.2014, 19:00  [ТС]
pav1uxa, как определить что это Russian Federation ?
0
> /dev/null
 Аватар для Блеф
286 / 119 / 86
Регистрация: 14.05.2014
Сообщений: 767
18.05.2014, 19:04
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
  if( $curl = curl_init() ) {
    $ip = $_SERVER["REMOTE_ADDR"];
    curl_setopt($curl, CURLOPT_URL, 'http://ip-whois.net/ip_geo.php?ip='.$ip);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
    $out = curl_exec($curl);
    $matches = array();
    $country = preg_match_all("/Страна: (.*)/i", $out, $matches);
    print_r($matches[1][1]);
    curl_close($curl);
  }
?>
Извините но откройте поисковик
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
18.05.2014, 19:12
Цитата Сообщение от nordx Посмотреть сообщение
pav1uxa, как определить что это Russian Federation ?
По этой ссылке огромное количество примеров. Автор Выше даже не поленился скопировать Вам пример из 3 строки данного запроса...
0
 Аватар для zhibirc
651 / 236 / 77
Регистрация: 18.02.2013
Сообщений: 784
18.05.2014, 19:13
Думаю, даже если реализовать такую штуку, то будут встречаться ложные перенаправления. Их количество можно более точно оценить, зная целевую аудиторию сайта. В любом случае, пользователю, на мой взгляд, должна быть дана возможность переключать язык сайта вручную. А языком "по-умолчанию" является язык основной части аудитории. Кроме того, юзерфрендли будет, я думаю, "запоминание" сайтом языка, выбранного пользователем. Ситуация усложняется и многонациональным составом многих стран с отсутствующим явно выраженным языковым большинством. С другой стороны, на одном языке могут говорить люди и в сильно разнесенных территориально странах, в целых регионах.

Если же начать решать эту задачу, думаю, сперва следует выяснить, на какие маркеры можно опираться в таком определении и выделить среди них наиболее устойчивые. Имею ввиду информацию, поступающую в клиентском запросе или полученная с помощью JS. Думаю, используемая пользователем локаль хороший показатель. Хотя, например, у меня стоит английская локаль, но более комфортно мне все же получать информацию на русском. Для получения языка вы можете использовать заголовок HTTP Accept-Language. Также следует учитывать, что не одним языком могут различаться особенноси восприятия людей разных стран. Это и система мер, и формат даты, и денежные единицы. Эти вещи, в зависимости от вашего контента, также стоит адаптировать.

В вопросе более-менее точной геолокациии и таргетинга в вебе важен комплексный подход, который учитывает и физическое размещение клиента, и локаль, и данные о маршрутизации.

Резюмируя, полагаю, что в данной постановке это не вполне оправдывающая себя задача, качество реализации которой будет расти пропорционально количеству используемых данных о пользователе. Что в целом может сильно усложнить задачу и должно быть оправдано целями ресурса, на котором такая проверка будет применяться. В любом случае, пользователи должны иметь свободу выбора.

IMHO
0
0 / 0 / 0
Регистрация: 11.01.2013
Сообщений: 24
18.05.2014, 19:28  [ТС]
bleef159, этот вариант я тоже видел. сервис через который идет проверка уже не работает
0
6 / 6 / 1
Регистрация: 26.06.2022
Сообщений: 147
Записей в блоге: 14
04.02.2023, 14:14
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?
$ip = $_SERVER['REMOTE_ADDR'];
function whois($ip) {
if ($ip!="") {
$sock = fsockopen ("whois.ripe.net",43,$errno,$errstr);
if ($sock) {
fputs ($sock, $ip."\r\n");
while (!feof($sock)) {
$str.=trim(fgets ($sock,128)." <br>");
}
}
else {
$str.="$errno($errstr)";
return;
}
fclose ($sock);
}return $str;
}
$whois = whois($_SERVER['REMOTE_ADDR']);
$need = "country:";
$pos = strpos($whois,$need);
$search = substr($whois,$pos,18);
$excount = explode(":", $search);
$country = trim($excount[1]); //готово
if($country == "EN") {echo "Go to eng...";
header('Location: тут ссылка на англискую страницу');
exit();
 
} 
?>
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.02.2023, 14:14
Помогаю со студенческими работами здесь

Определение страны посетителя сайта и его перенаправление
Нужно определить страну посетителя сайта и перенаправить его на нужную страницу. Сделал так: http://webmasta.org/community/read/18/ но...

Определение страны посетителя
Добрый день! Помогите плз определиться, что лучше использовать для определения страны посетителя сайта и дальнейшего редиректа на...

Определение страны
как определить страну

Определение страны по ip
Кто нибудь сталкивался с такой задачей? Не подскажете с чего начать?

Определение страны по IP
Может, конечно, не в тот раздел, но все же: как вообще осуществляется сабж?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru