• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
بدست آوردن نوع مرورگر و سيستم عامل كاربر
#1
سلام
براي اين كاراز $_SERVER['HTTP_USER_AGENT'] استفاده كردم اما حاصل يه چيزي مثل اين بود
کد:
Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418 (KHTML, like Gecko) Safari/417.9.3
اما من فقط نوع مرورگر و سيستم عامل كاربر رو مي خوام . از get_browser هم رفتم استفاده كنم كه ظاهرا بايد توي php.ini ، گزينه browscap رو فعال كرد تا به موقعيت فايل browscap.ini اشاره كنه . كه اصلا اين فايل همراه نسخه php من وجود نداره و فكر هم نمي كنم سروري از اون به درستي پشتيباني كنه .

به نظرتون براي اين مورد بايد چيكار كنم . فقط نوع و نسخه مرورگر و سيستم عامل كاربر رو مي خوام .
  پاسخ
تشکر شده توسط :
#2
کد پی‌اچ‌پی:
class Browser {
    
/**
        Figure out what browser is used, its version and the platform it is
        running on.

        The following code was ported in part from JQuery v1.3.1
    */
    
public static function detect() {
        
$userAgent strtolower($_SERVER['HTTP_USER_AGENT']);

        
// Identify the browser. Check Opera and Safari first in case of spoof. Let Google Chrome be identified as Safari.
        
if (preg_match('/opera/'$userAgent)) {
            
$name 'opera';
        }
        elseif (
preg_match('/webkit/'$userAgent)) {
            
$name 'safari';
        }
        elseif (
preg_match('/msie/'$userAgent)) {
            
$name 'msie';
        }
        elseif (
preg_match('/mozilla/'$userAgent) && !preg_match('/compatible/'$userAgent)) {
            
$name 'mozilla';
        }
        else {
            
$name 'unrecognized';
        }

        
// What version?
        
if (preg_match('/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/'$userAgent$matches)) {
            
$version $matches[1];
        }
        else {
            
$version 'unknown';
        }

        
// Running on what platform?
        
if (preg_match('/linux/'$userAgent)) {
            
$platform 'linux';
        }
        elseif (
preg_match('/macintosh|mac os x/'$userAgent)) {
            
$platform 'mac';
        }
        elseif (
preg_match('/windows|win32/'$userAgent)) {
            
$platform 'windows';
        }
        else {
            
$platform 'unrecognized';
        }

        return array(
            
'name'      => $name,
            
'version'   => $version,
            
'platform'  => $platform,
            
'userAgent' => $userAgent
        
);
    }
}

Usage:
$browser TkBrowser::detect();
echo 
'You browser is '.$browser['name'].' version '.$browser['version'].' running on '.$browser['platform']; 
  پاسخ
#3
سلام
من این کار رو میخواستم بدون استفاده از کلاس با تابع get_browser انجام بدم .مکان فایل browscap.ini رو تویه php.ini مشخص کردم ولی مشخصات سیستم کاربر رو بدون مقادیر برام چاپ میکنه . یه همچین چیزی . به نظرتون مشکل از چیه؟
Array ( [browser_name_regex] => §^.*$§ [browser_name_pattern] => * [comment] => Default Browser [browser] => Default Browser [version] => 0.0 [majorver] => 0 [minorver] => 0 [platform] => unknown [platform_version] => unknown [platform_description] => unknown [alpha] => [beta] => [win16] => [win32] => [win64] => [frames] => [iframes] => [tables] => [cookies] => [backgroundsounds] => [javascript] => [vbscript] => [javaapplets] => [activexcontrols] => [ismobiledevice] => [issyndicationreader] => [crawler] => [cssversion] => 0 [aolversion] => 0 [device_name] => unknown [device_maker] => unknown [renderingengine_name] => unknown [renderingengine_version] => unknown [renderingengine_description] => unknown )
  پاسخ
تشکر شده توسط :
#4
نبش قبر میکنی ؟
وبلاگ rezaonline.net/blog
سفارش برنامه نویسی reza.biz
Php , mysql , postgresql , redis , Yii and ... Cool
  پاسخ
تشکر شده توسط : shgninc
#5
(۱۳۹۱ آذر ۰۹, ۱۲:۱۱ ق.ظ)Reza نوشته: نبش قبر میکنی ؟
نخواستم الکی تاپیک جدید با همین موضوع ایجاد کنم. اشکال داره؟؟Huh
  پاسخ
تشکر شده توسط : shgninc
#6
(۱۳۹۱ آذر ۰۹, ۰۲:۵۲ ق.ظ)fnap نوشته:
(۱۳۹۱ آذر ۰۹, ۱۲:۱۱ ق.ظ)Reza نوشته: نبش قبر میکنی ؟
نخواستم الکی تاپیک جدید با همین موضوع ایجاد کنم. اشکال داره؟؟Huh

منم همین مشکل رو دارم. با اپرا امتحان کردم همه ی مشخصات رو خالی چاپ میکنه
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان