ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 14.01.2008, 02:03
Piflit
Banned
Регистрация: 11.08.2006
Сообщений: 1,522
С нами: 10393869

Репутация: 2032


По умолчанию

PHP код:
<?

/*

Файл : sniffer.php

Назначение: Идентификация типа/версии браузера и платформы

Автор: В. Дж. Гилмор

Дата : 24 августа 2000 г.

*/

// Функция: browser_info

// Назначение: Возвращает тип и версию браузера

function browser_info ($agent) {

// Определить тип браузера

// Искать сигнатуру Internet Explorer

if (ereg('MSIE ([0-9].[0-9]{1,2})', $agent, $version))

$browse_type = "IE";

$browse version = $version[1];

// Искать сигнатуру Opera

elseif (ereg( 'Opera ([0-9].[0-9]{1,2})'. $agent, $version)):

$browse_type = "Opera":

$browse_version = $version[1]:

// Искать сигнатуру Netscape. Проверка браузера Netscape

// *должна* выполняться после проверки Internet Explorer и Opera,

// поскольку все эти браузеры любят сообщать имя

// Mozilla вместе с настоящим именем.

elseif (ereg( 'Mozilla/([0-9].[0-9]{1,2})'. $agent, $version)) :

$browse_type = "Netscape";

$browse_version = $version[1];

// Если это не Internet Explorer, Opera или Netscape.

// значит, мы обнаружили неизвестный браузер,

else :

$browse_type = "Unknown";

$browse_version = "Unknown";

endif:

// Вернуть тип и версию браузера в виде массива

return array ($browse_type, $browse_version);

} 
// Конец функции browser_info

// Функция: opsys_info

// Назначение: Возвращает информацию об операционной системе пользователя

function opsys_info($agent) {

// Идентифицировать операционную систему

// Искать сигнатуру Windows

if ( strstr ($agent. 'win') ) :

$opsys = "windows";

// Искать сигнатуру Linux

elseif ( strstr($agent, 'Linux') ) :

$opsys = "Linux";

// Искать сигнатуру UNIX

elseif ( strstr (Sagent, 'Unix') ) :

$opsys = "Unix";

// Искать сигнатуру Macintosh

elseif ( strstr ($agent, 'Mac') ) :

$opsys = "Macintosh";

// Неизвестная платформа else :

$opsys = "Unknown";

endif;

// Вернуть информацию об операционной системе

return $opsys;

} 
// Конец функции opsys_info

// Сохранить возвращаемый массив в списке

list ($browse_type. $browse_version) = browser_info ($HTTP_USER_AGENT); Soperating_sys = opsysjnfo ($HTTP_USER_AGENT);

print 
"Browser Type: $browse_type <br>";

print 
"Browser Version: $browse_version <br>";

print 
"Operating System: $operating_sys <br>":

?>
 
Ответить с цитированием

  #12  
Старый 14.01.2008, 12:45
Alekzzzander
Участник форума
Регистрация: 05.09.2007
Сообщений: 151
С нами: 9832600

Репутация: 67
По умолчанию

если ошибаюсь поправьте но вроде так тоже возможно
PHP код:
$user_agent = $HTTP_USER_AGENT;

function 
detect_os()
{
global 
$user_agent;

        
    if     (
strstr($user_agent, "Windows 95"))     $os = "Windows 95";
    elseif (
strstr($user_agent, "Windows NT 4"))   $os = "Windows NT 4";
    elseif (
strstr($user_agent, "Windows 98"))     $os = "Windows 98";
    elseif (
strstr($user_agent, "Win 9x 4.9"))     $os = "Windows ME";
    elseif (
strstr($user_agent, "Windows NT 5.0")) $os = "Windows 2000";
    elseif (
strstr($user_agent, "Windows NT 5.1")) $os = "Windows XP";
    elseif (
strstr($user_agent, "Windows NT 5.2")) $os = "Windows 2003";
    elseif (
strstr($user_agent, "Windows NT 6.0")) $os = "Windows Vista";
    elseif (
strstr($user_agent, "Linux"))          $os = "Linux";
    elseif (
strstr($user_agent, "Mac OS"))         $os = "Mac OS";
    else                                           
$os = "Other";
    
    return 
$os;
}


function 
detect_browser()
{
    global 
$user_agent;        
    if (
eregi("(opera) ([0-9]{1,2}.[0-9]{1,3}){0,1}", $user_agent, $bv) or 
        
eregi("(opera/)([0-9]{1,2}.[0-9]{1,3}){0,1}", $user_agent, $bv))
        {
            
$type    = "Opera";
            
$browser = "Opera" . " " . $bv[2];
        }
        elseif (
eregi("(konqueror)/([0-9]{1,2}.[0-9]{1,3})", $user_agent, $bv))
        {
            
$type    = "Konqueror";
            
$browser = "Konqueror" . " " . $bv[2];
        }
        elseif (
eregi("(lynx)/([0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2})", $user_agent, $bv))
        {
            
$type    = "Lynx";
            
$browser = "Lynx" . " " . $bv[2];
        }
        elseif (
eregi("(links) \\(([0-9]{1,2}.[0-9]{1,3})", $user_agent, $bv))
        {
            
$type    = "Links";
            
$browser = "Links" . " " . $bv[2];
        }
        elseif (
eregi("(msie) ([0-9]{1,2}.[0-9]{1,3})", $user_agent, $bv))
        {
            
$type    = "Internet Explorer";
            
$browser = "Internet Explorer" . " " . $bv[2];
        }
        elseif (
eregi("(netscape6)/(6.[0-9]{1,3})", $user_agent, $bv))
        {
            
$type    = "Netscape";
            
$browser = "Netscape" . " " . $bv[2];
        }
        elseif (
eregi("(firefox)/([0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2})", $user_agent, $bv) or
                
eregi("(firefox)/([0-9]{1,2}.[0-9]{1,2})", $user_agent, $bv))
        {
            
$type    = "Firefox";
            
$browser = "Firefox" . " " . $bv[2];
        }        
        elseif (
eregi("(mozilla)/([0-9]{1,2}.[0-9]{1,3})", $user_agent, $bv))
        {
            
$type    = "Mozilla";
            
$browser = "Mozilla" . " " . $bv[2];
        }
        else
        {
            
$type    = "Other";
            
$browser = "Other";
        }    
    
    return 
$browser;
}

function 
win_uni ($in) {
  
$in = convert_cyr_string($in ,"w","i");
  
$out = "";
  for (
$i=0; $i < strlen($in); $i++) {
    
$char = ord($in[$i]);
    
$out .= ($char > 175)?"&#".(1040+($char-176)).";":$in[$i];
  }
  return 
$out;
} 
 
Ответить с цитированием

  #13  
Старый 14.01.2008, 12:56
krypt3r
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
С нами: 10021597

Репутация: 905


По умолчанию

И чего вы юзаете $http_user_agent, а не $_server['http_user_agent']? И не забываейте, что юзер-агента можно подделать
 
Ответить с цитированием

  #14  
Старый 14.01.2008, 13:10
Alekzzzander
Участник форума
Регистрация: 05.09.2007
Сообщений: 151
С нами: 9832600

Репутация: 67
По умолчанию

если хорошо постараться то можно подделать всё)))
 
Ответить с цитированием

  #15  
Старый 27.01.2008, 15:23
SSB1981
Участник форума
Регистрация: 07.01.2008
Сообщений: 109
С нами: 9653574

Репутация: 17
Lightbulb

Вот написал:
http://www.ssb1981.sid.su/Files/download.php?file=0
Информер показывает: IP, Браузер, Windows
Информер распространяемый!
Было задумано 5 пунктов, из которых 4 осуществлены.

Пример:


Последний раз редактировалось SSB1981; 15.02.2008 в 15:20..
 
Ответить с цитированием

  #16  
Старый 27.01.2008, 15:27
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,315
С нами: 10248806

Репутация: 2371


По умолчанию

Это все уже есть в паблике...
Не видел скрипта определения города(!)
 
Ответить с цитированием

  #17  
Старый 27.01.2008, 15:45
NOmeR1
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,187
С нами: 10495046

Репутация: 2642


По умолчанию

Isis, скрипт маднета определяет - http://madnet.name/tools/userinfo/
 
Ответить с цитированием

  #18  
Старый 27.01.2008, 16:15
SSB1981
Участник форума
Регистрация: 07.01.2008
Сообщений: 109
С нами: 9653574

Репутация: 17
По умолчанию

Определение города заработает в ближайшеее время, причём если пользователь из России то будет отображаться город, край и регион.
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP 186 21.02.2010 02:41
Что такое Php? PAPA212 Болталка 13 28.12.2007 20:44



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.