Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   определение (https://forum.antichat.xyz/showthread.php?t=145163)

Doom123 02.10.2009 16:59

определение
 
Здрасте =)

Мне нужно определять если пользователь зашедший на сайт из спб или нет .. как я могу это сделать ?

Kaimi 02.10.2009 17:17

Базы geoip поставить и сверять по ним ip пришедшего

Doom123 02.10.2009 18:16

в базе разве не страна? мне нужен город ...

[QwyZ] 02.10.2009 18:21

ip -> ripn -> grab

Doom123 02.10.2009 18:22

аха .. на сайте 5к пользователей в день ... и 5 к запросов на ripn ? =)

Doom123 02.10.2009 20:20

Если кому интересно ... поиск по диапазону из базы которую берём тут
http://resident.su/ipgeo/
PHP код:

<?php

/**
 * @author @Fatal@
 * @copyright 2009
 */
 

$exp =  explode("\r\n",file_get_contents('a.txt'));
$a '0';

function 
f($b,$a,$qwe)
{
    list(
$z,$x) = explode(' - ',$b);

    
$q explode('.',$z);
    
$w explode('.',$x);
    
$e explode('.',$_SERVER['REMOTE_ADDR');

if(
$q[0] === $e[0] && $q[1] === $e[1])
{
    if(
$qwe === $z || $x === $qwe)
        
$qwe 1;
    elseif(
$e[2] > $q[2] && $e[2] < $w[2])
        
$qwe 1;
    elseif(
$e[2] === $q[2] && $e[2] < $w[2])
        
$qwe 1;
    elseif(
$e[2] === $w[2] && $e[3] > $q[3] && $e[3] < $w[3])
        
$qwe 1;
}

if(
$qwe === 1)
    return 
true;
    
}
array_walk($exp,'f',&$a);

if(
$a === 1)
    echo 
'da';
else
    echo 
'net';
?>

делал на скорую руку так что за корявый код срьте


Время: 11:42