HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 06.06.2008, 17:58
oRb
Members of Antichat - Level 5
Регистрация: 09.05.2008
Сообщений: 304
Провел на форуме:
7875940

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

И всетаки они разные
PHP код:
<?
header 
("Content-type: image/png");
error_reporting(0);
$mysql_host "";
$mysql_database "";
$mysql_user "";
$mysql_password "";
mysql_connect($mysql_host$mysql_user$mysql_password);
mysql_select_db($mysql_database);


$agent substr($_SERVER['HTTP_USER_AGENT'], 0);
if(
preg_match("!(Opera[\s\d\./]+)!msi"$agent$math))
{
    
$agent $math[1];
    
$mysqlAgent "opera";
}
elseif(
preg_match("!(Firefox[\s\d\./]+)!msi"$agent$math))
{
    
$agent $math[1];
    
$mysqlAgent "firefox";
}
elseif (
preg_match("!MSIE([\s\d\./]+)!msi"$agent$math))
{
    
$agent "Internet Explorer ".$math[1];
    
$mysqlAgent "msie";
}
elseif (
preg_match("!(Konqueror[\s\d\./]+)!msi"$agent$math))
{
    
$agent $math[1];
    
$mysqlAgent "konqueror";
}
elseif (
preg_match("!(Iceweasel[\s\d\./]+)!msi"$agent$math))
{
    
$agent $math[1];
    
$mysqlAgent "iceweasel";
}
elseif (
preg_match("!(Lynx[\s\d\./]+)!msi"$agent$math))
{
    
$agent $math[1];
    
$mysqlAgent "lynx";
}
elseif (
preg_match("!(Netscape[\s\d\./]+)!msi"$agent$math))
{
    
$agent $math[1];
    
$mysqlAgent "netscape";
}
elseif (
preg_match("!(Safari[\s\d\./]+)!msi"$agent$math))
{
    
$agent $math[1];
    
$mysqlAgent "safari";
}

if(
preg_match("!(Windows\s?[\s\w\.]+)!"$_SERVER['HTTP_USER_AGENT'], $math))
{
    
$os $math[1];
    if(
$os == "Windows NT 5.0")
        
$os "Windows 2000";
    elseif(
$os == "Windows NT 5.01")
        
$os "Windows 2000";
    elseif(
$os == "Windows NT 5.1")
        
$os "Windows XP";
    elseif(
$os == "Windows NT 5.2")
        
$os "Windows Server 2003";
    elseif(
$os == "Windows NT 6.0")
        
$os "Windows Vista";
}
elseif(
preg_match("!(Mac\s?OS[\s\w\.]+)!"$_SERVER['HTTP_USER_AGENT'], $math))
    
$os $math[1];
elseif(
preg_match("!(Symbian\s?OS[\s\w\./]*)!"$_SERVER['HTTP_USER_AGENT'], $math))
    
$os $math[1];
elseif(
preg_match("!(Linux[\s\w\./]+)!"$_SERVER['HTTP_USER_AGENT'], $math))
    
$os $math[1];
elseif(
preg_match("!(\w+BSD[\s\w\./]+)!"$_SERVER['HTTP_USER_AGENT'], $math))
    
$os $math[1];
elseif(
preg_match("!(\J2ME[\s\w\./]+)!"$_SERVER['HTTP_USER_AGENT'], $math))
    
$os $math[1];
    
include(
"geoip/geoipcity.inc");
include(
"geoip/geoipregionvars.php");
$gi geoip_open("geoip/GeoIPCity.dat"GEOIP_MEMORY_CACHE);
$record geoip_record_by_addr($gi$_SERVER['REMOTE_ADDR']);
if(!
$record->city)
    
$record->city "-";
if(!
$record->country_name)
    
$record->country_name "-";

    
$height 42;
$width 350;
$im imagecreate($width,$height);

$clblack ImageColorAllocate($im0,0,0);
$clLightGrey  ImageColorAllocate($im222,222,222);
$clgrey  ImageColorAllocate($im190,190,190);
$clDarkGray ImageColorAllocate($im70,70,70);

for(
$i 0$i $height$i++)
{
      
$color ImageColorAllocate($im100-(100)/$height*$i,100-(100)/$height*$i,100-(100)/$height*$i);
    
imageline($im,0,$i,$width-1$i$color);
}
for(
$i 0$i $width+$height$i+=5)
{
    
imageline($im,$i-$height,0,$i$height$clDarkGray);
}
imagerectangle($im00$width $height 1$clgrey);
    
$font="mini.ttf";
imagettftext($im60310$clgrey$font"> Browser:");
imagettftext($im607010$clLightGrey$font$agent);
imagettftext($im60317$clgrey$font"> OS:");
imagettftext($im607017$clLightGrey$font$os);
imagettftext($im60324$clgrey$font"> IP:");
imagettftext($im607024$clLightGrey$font$_SERVER['REMOTE_ADDR']);
imagettftext($im60331$clgrey$font"> Country:");
imagettftext($im607031$clLightGrey$font$record->country_name);
imagettftext($im60338$clgrey$font"> City:");
imagettftext($im607038$clLightGrey$font$record->city);
imagettftext($im60$width-2010$clgrey$font"oRb");

ImagePng($im);
geoip_close($gi);

mysql_query("INSERT INTO `useragents` SET `ip`='".$_SERVER['REMOTE_ADDR']."', `browser`='".addslashes($mysqlAgent)."', ".
            
"`useragent`='".addslashes($_SERVER['HTTP_USER_AGENT'])."', `os`='".addslashes($os)."',".
            
"`referer`='".addslashes($_SERVER["HTTP_REFERER"])."', `lastupdate`=NOW()".
            
"ON DUPLICATE KEY UPDATE `browser`='".addslashes($mysqlAgent)."', ".
            
"`useragent`='".addslashes($_SERVER['HTTP_USER_AGENT'])."', `os`='".addslashes($os)."',".
            
"`referer`='".addslashes($_SERVER["HTTP_REFERER"])."', `lastupdate`=NOW()");
?>
на хостинг не выкладываю, ибо лень 20 метров в нек кидать. geoip на сайте разработчиков.
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



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


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




ANTICHAT.XYZ