Переход по ссылкам из разных стран (PHP)

Форум для тех кто начинает осваивать язык php.
albina111484
Сообщения: 31

Переход по ссылкам из разных стран (PHP)

Сообщение albina111484 » Чт авг 20, 2015 6:24 pm

Здравствуйте! Я снова к вам за помощью))) Подскажите, как сделать, чтобы посетитель из РФ при нажатии переходил по одной ссылки, а из РБ по другой?
Реклама
Аватара пользователя
Slash
Администратор
Сообщения: 2029
Поблагодарили: 62 раза

Re: Переход по ссылкам из разных стран (PHP)

Сообщение Slash » Чт авг 20, 2015 8:36 pm

Как вариант, определять страну пользователя по IP.
Получив данные о стране пользователя выдаем ему соответствующею ссылку.
albina111484
Сообщения: 31

Re: Переход по ссылкам из разных стран (PHP)

Сообщение albina111484 » Чт авг 20, 2015 10:15 pm

а как это сделать?)))
Аватара пользователя
Slash
Администратор
Сообщения: 2029
Поблагодарили: 62 раза

Re: Переход по ссылкам из разных стран (PHP)

Сообщение Slash » Пт авг 21, 2015 1:21 pm

Например так:

Код: Выделить всё

# Получаем IP адрес пользователя 
$ip $_SERVER['REMOTE_ADDR'];
# Парсим страницу ipgeobase.ru для определения местонахождения
$var file_get_contents('http://ipgeobase.ru/?address=' $ip);
# Получаем страну
preg_match('|(?<=<b>).*?(?=</b>)|'$var$country);

/*
    Теперь в переменной $country[0] находится странна определенная по IP пользователя.
    Используя эту переменную можно выводить контент для каждой страны разный.
*/
 
if ($country[0] == 'RU')
{
    
# Контент (например ссылка) для территории РФ 
}
else if (
$country[0] == 'BY')
{
    
# Контент для РБ
}
else
{
    
# Контент для остальных стран
albina111484
Сообщения: 31

Re: Переход по ссылкам из разных стран (PHP)

Сообщение albina111484 » Сб авг 22, 2015 5:20 pm

Подскажите, пожалуйста, почему не не отображается ссылка?

Код: Выделить всё


<div id="shop"> 
<?php
# Получаем IP адрес пользователя
$ip $_SERVER['REMOTE_ADDR'];
# Парсим страницу ipgeobase.ru для определения местонахождения
$var file_get_contents('http://ipgeobase.ru/?address=' $ip);
# Получаем страну
preg_match('|(?<=<b>).*?(?=</b>)|'$var$country);

/*
    Теперь в переменной $country[0] находится странна определенная по IP пользователя.
    Используя эту переменную можно выводить контент для каждой страны разный.
*/
 
if ($country[0] == 'RU')
{
print <<<HERE
<a href="http://tabletka.by" target="_blank">Купить в аптеке</a>

HERE;

}
else if (
$country[0] == 'BY')
{
print <<<HERE
<a href="http://mail.ru" target="_blank">Купить в аптеке</a>

HERE;
}

?>
</div> 
Аватара пользователя
Slash
Администратор
Сообщения: 2029
Поблагодарили: 62 раза

Re: Переход по ссылкам из разных стран (PHP)

Сообщение Slash » Сб авг 22, 2015 8:21 pm

Код: Выделить всё

if ($country[0] == 'RU')
{
    echo '<a href="http://tabletka.by" target="_blank">Купить в аптеке</a>';
}
else
{
    echo '<a href="http://mail.ru" target="_blank">Купить в аптеке</a>';
}

Имейте введу, что ссылка для Белоруссии будет доступна для всех стран, кроме России (ссылка для России доступна только России).

PS Я бы использовал echo вместо print Разница между echo() и print() [сравнение]
albina111484
Сообщения: 31

Re: Переход по ссылкам из разных стран (PHP)

Сообщение albina111484 » Сб авг 22, 2015 10:32 pm

Спасибо вам огромное, вы как всегда меня выручили!!!)))

Вернуться в «PHP»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя