Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Страница в зависимости от провайдера


Автор: Каролина 13.10.2012, 11:32
Есть такой вот скрипт:
Код

<?php
$ip = $_SERVER["REMOTE_ADDR"];
include("geoipcity.inc");
$gi = geoip_open("GeoIPCity.dat",GEOIP_STANDARD);
$giorg = geoip_open("GeoIPOrg.dat",GEOIP_STANDARD); 
$record = geoip_record_by_addr($gi, $ip);
$org = geoip_org_by_addr($giorg, $ip); 
geoip_close($gi);
geoip_close($giorg);
printf("<center>Ваш айпи-адрес: $ip");
printf("<center>Ваша страна:  $record->country_name");
printf("<center>Вы из города:  $record->city ");
printf("<center>Ваш провайдер:  $org ");
?>


Выводятся например такие данные о вошедшем на сайт пользователе:

Ваш айпи-адрес: 200.112.32.210
Ваша страна: Angola
Вы из города: Cerynfu 
Ваш провайдер: Telnet Internet Service Provider Dial UP Users

Так вот для провайдера Telnet Internet Service Provider Dial UP Users нужно переадресовать на другую страницу например bad.html,для всех остальных показать страницу good.html

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

Автор: ksnk 13.10.2012, 12:28
Цитата(Каролина @  13.10.2012,  11:32 Найти цитируемый пост)
название провайдера есть пробелы,и ничего у меня не получается

Как это? Две строки сравнить не получается?

Автор: Каролина 13.10.2012, 12:32
ksnk, нет...не получается...какие то ошибки выходят...Мажете мне код написать правильный?

Автор: Guedda 13.10.2012, 14:29
Код

<?php
$ip = $_SERVER["REMOTE_ADDR"];
include("geoipcity.inc");
$gi = geoip_open("GeoIPCity.dat",GEOIP_STANDARD);
$giorg = geoip_open("GeoIPOrg.dat",GEOIP_STANDARD); 
$record = geoip_record_by_addr($gi, $ip);
$org = geoip_org_by_addr($giorg, $ip); 
geoip_close($gi);
geoip_close($giorg);
if ("Telnet Internet Service Provider Dial UP Users" == $org) {
    header("Location: bad.html");
}
printf("<center>Ваш айпи-адрес: $ip");
printf("<center>Ваша страна:  $record->country_name");
printf("<center>Вы из города:  $record->city ");
printf("<center>Ваш провайдер:  $org ");
?>

Автор: Каролина 13.10.2012, 15:55
Guedda, спасибо большое,работает...А как сделать чтоб для всех остальных которые не относятся к "Telnet Internet Service Provider Dial UP Users" перенаправляло на good.html ??? Тоесть если провайдер "Telnet Internet Service Provider Dial UP Users" то пошли на bad.html,а если любой другой провайдер то идём на good.html

Заранее огромное спасибо !

Автор: Guedda 13.10.2012, 16:57
А Вы вообще знакомы с синтаксисом PHP? Или Вы простой менеджер?
Код

$ip = $_SERVER["REMOTE_ADDR"];
include("geoipcity.inc");
$gi = geoip_open("GeoIPCity.dat",GEOIP_STANDARD);
$giorg = geoip_open("GeoIPOrg.dat",GEOIP_STANDARD); 
$record = geoip_record_by_addr($gi, $ip);
$org = geoip_org_by_addr($giorg, $ip); 
geoip_close($gi);
geoip_close($giorg);
if ("Telnet Internet Service Provider Dial UP Users" == $org) {
    header("Location: bad.html");
} else {
    header("Location: good.html");
}
printf("<center>Ваш айпи-адрес: $ip");
printf("<center>Ваша страна:  $record->country_name");
printf("<center>Вы из города:  $record->city ");
printf("<center>Ваш провайдер:  $org ");

Так вот если Вы менеджер, то лучше задавать такие вопросы в разделе http://forum.vingrad.ru/index.php?show_type=forum&showforum=142. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)