Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: определяем Операционную систему, браузер и useragent..

Сообщения:  [1-4] 

 
 автор: Trianon   (30.03.2006 в 17:19)   письмо автору
 
   для: Sergey89   (30.03.2006 в 16:33)
 

Да. Но это на совести автора функции :)

   
 
 автор: Sergey89   (30.03.2006 в 16:33)   письмо автору
 
   для: Trianon   (30.03.2006 в 15:38)
 

Кстати ошибочка . Win XP оставляет запись NT5.1, а Win 2000 NT5.0

   
 
 автор: Trianon   (30.03.2006 в 15:38)   письмо автору
 
   для: ZetRider   (30.03.2006 в 15:32)
 


<? 
    
// функция определяет версию браузера и ОС 
    
function browser_and_os(){ 
...
...
...
        return array(
"agent" => $agent"ver" => $ver"os" => $os); 
    } 
    

    foreach(
browser_and_os() as $name => $val)      
       echo 
"$name$val<br>";


?> 

   
 
 автор: ZetRider   (30.03.2006 в 15:32)   письмо автору
 
 

вот скрипт:

<?
    
// функция определяет версию браузера и ОС
    
function browser_and_os(){
        global 
$HTTP_USER_AGENT;
    
        
// Определяем тип и версию браузера
        
if (ereg"Opera ([0-9].[0-9]{1,2})"$HTTP_USER_AGENT$regs)) {
            
$ver $regs[1];
            
$agent="Opera";
        } elseif (
ereg"MSIE ([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)) {
            
$ver=$regs[1];
            
$agent="MSIE";
        } elseif (
strstr($HTTP_USER_AGENT"Mozilla") && 
              
ereg"rv:([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)) {
            
$ver=$regs[1];
            
$agent="Mozilla";
        } elseif (
ereg"Opera/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)) {
            
$ver=$regs[1];
            
$agent="Opera";
        } elseif (
ereg("Konqueror/([0-9.+])",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Konqueror";
        } elseif (
ereg("Mozilla/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Netscape";
        } elseif (
ereg("Googlebot/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Google Bot";
        } elseif (
ereg("Yandex/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Yandex Bot";
        } elseif (
ereg("Wget/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Wget";
        } elseif (
ereg("WebZIP/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="WebZIP";
        } elseif (
ereg("StackRambler/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Rambler Bot";
        } elseif (
ereg("Teleport Pro/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Teleport Pro";
        } elseif (
ereg("Links \(([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Links";
        } elseif (
ereg("Lynx\/([0-9].[0-9]{1,2})",$HTTP_USER_AGENT,$regs)){
            
$ver=$regs[1];
            
$agent="Lynx";
        } elseif (
strstr($HTTP_USER_AGENT"FlashGet")){
            
$ver=0;
            
$agent="FlashGet";
        } elseif (
ereg("^Scooter"$HTTP_USER_AGENT)){
            
$ver=0;
            
$agent="Altavista Bot";
        }
        else {
            
$ver=0;
            
$agent="Other";
        }

        
// Определяем операционную систему

        
if (strstr($HTTP_USER_AGENT,"Win95") || strstr($HTTP_USER_AGENT,"Windows 95")) {
            
$os="Win95";
        } elseif (
strstr($HTTP_USER_AGENT,"Win98") || strstr($HTTP_USER_AGENT,"Windows 98")) {
            
$os="Win98";
        } elseif (
strstr($HTTP_USER_AGENT,"WinNT") || strstr($HTTP_USER_AGENT,"Windows NT")) {
            
$os="WinNT";
        } elseif (
strstr($HTTP_USER_AGENT,"WinXP") || strstr($HTTP_USER_AGENT,"Windows XP")) {
            
$os="WinXP";
        } elseif (
strstr($HTTP_USER_AGENT,"WinME") || strstr($HTTP_USER_AGENT,"Windows ME")) {
            
$os="WinME";
        } elseif (
strstr($HTTP_USER_AGENT,"Win2000") || strstr($HTTP_USER_AGENT,"Windows 2000")) {
            
$os="Win2000";
        } elseif (
strstr($HTTP_USER_AGENT,"Win16") || strstr($HTTP_USER_AGENT,"Win32") || 
              
strstr($HTTP_USER_AGENT,"Windows")) {
            
$os="Win";
        } elseif (
strstr($HTTP_USER_AGENT,"Mac")) {
            
$os="Mac";
        } elseif (
strstr($HTTP_USER_AGENT,"Linux")) {
            
$os="Linux";
        } elseif (
strstr($HTTP_USER_AGENT,"FreeBSD")) {
            
$os="FreeBSD";
        } elseif (
strstr($HTTP_USER_AGENT,"Unix") || strstr($HTTP_USER_AGENT"X11")) {
            
$os="Unix";
        } elseif (
strstr($HTTP_USER_AGENT,"OS/2")) {
            
$os="OS/2";
        } else {
            
$os="Other";
        }
    
        return array(
"agent" => $agent"ver" => $ver"os" => $os);
    }

?>


Что нужно доделать чтобы он ывводил информацию?

   

Сообщения:  [1-4] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования