آموزش شمارنده آمار بازديد

نظر شما درباره اين آموزش

  • خوب

    رای: 0 0.0%
  • ضعيف

    رای: 0 0.0%
  • بد

    رای: 0 0.0%

  • مجموع رای دهندگان
    4

MMSHFE

Member
با سلام، دوستان گرامي خواستم بعد از اينهمه آموزش ساخت كد شمارنده سايت كه هر كدوم يك روش رو پيشنهاد ميكنن، من هم روش خودم رو بگم كه چند ساله دارم استفاده ميكنم و علاوه به انعطاف پذيري بالايي كه داره، حجم ديتابيس رو هم بالا نميبره. خوب مستقيم ميريم سراغ كد:
PHP:
<?php
require_once("config.php");
$agent=$_SERVER["HTTP_USER_AGENT"];
if((ereg("Nav",$agent)
    || ereg("Gold",$agent)
    || ereg("X11",$agent)
    || ereg("Netscape",$agent))
    && !ereg("MSIE",$agent)
    && !ereg("Mozilla",$agent)
    && !ereg("Konqueror",$agent)) $browser = "Netscape";
elseif(ereg("Mozilla",$agent)
    || eregi("FireFox",$agent)
    || eregi("Bon.Echo",$agent)
    && !ereg("MSIE",$agent)) $browser = "FireFox";
elseif(ereg("MSIE",$agent)) $browser = "MSIE";
elseif(ereg("Lynx",$agent)) $browser = "Lynx";
elseif(ereg("Opera",$agent)) $browser = "Opera";
elseif(ereg("WebTV",$agent)) $browser = "WebTV";
elseif(ereg("Konqueror",$agent)) $browser = "Konqueror";
elseif(eregi("google",$agent)) $browser = "Chrome";
elseif(eregi("bot",$agent)
    || ereg("Slurp",$agent)
    || ereg("Scooter",$agent)
    || eregi("Spider",$agent)
    || eregi("Infoseek",$agent)) $browser = "Bot";
else $browser = "Other";
if(ereg("Win",$agent)) $os = "Windows";
elseif((ereg("Mac",$agent))
    || (ereg("PPC",$agent))) $os = "Mac";
elseif(ereg("Linux",$agent)) $os = "Linux";
elseif(ereg("FreeBSD",$agent)) $os = "FreeBSD";
elseif(ereg("SunOS",$agent)) $os = "SunOS";
elseif(ereg("IRIX",$agent)) $os = "IRIX";
elseif(ereg("BeOS",$agent)) $os = "BeOS";
elseif(ereg("OS/2",$agent)) $os = "OS/2";
elseif(ereg("AIX",$agent)) $os = "AIX";
else $os = "Other";
try
{
    mysql_connect($host,$user,$pass);
    mysql_select_db($db);
    $query="UPDATE `counter` SET `count`=`count`+1"
    $query.=" where (`type`='Total' AND `var`='Hits')"
    $query.=" OR (`type`='Browser' AND `var`='$browser')"
    $query.=" OR (`type`='OS' AND `var`='$os')";
    $result=mysql_query($query);
}
catch(Exception $error)
{
    die($error->getMessage()."\n");
}
توي كد بالا، همونطور كه ميبينيد، هم تعداد كلي بازديد و هم آمار تفكيكي برحسب نوع مرورگر و نوع سيستم عامل استخراج ميشه و به ركوردهاي مربوطه اضافه ميشه. تنها كار باقيمانده، كد MySQL مربوط به جداول هست:
کد:
CREATE TABLE `counter` (
  `ID` int(11) NOT NULL,
  `Type` longtext collate utf8_bin NOT NULL,
  `Var` longtext collate utf8_bin NOT NULL,
  `Count` int(11) NOT NULL,
  PRIMARY KEY  (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

INSERT INTO `counter` (`ID`, `Type`, `Var`, `Count`) VALUES
(1, 'Total', 'Hits', 0),
(2, 'Browser', 'Netscape', 0),
(3, 'Browser', 'FireFox', 0),
(4, 'Browser', 'MSIE', 0),
(5, 'Browser', 'Lynx', 0),
(6, 'Browser', 'Opera', 0),
(7, 'Browser', 'WebTV', 0),
(8, 'Browser', 'Konqueror', 0),
(9, 'Browser', 'Chrome', 0),
(10, 'Browser', 'Bot', 0),
(11, 'Browser', 'Other', 0),
(12, 'OS', 'Windows', 0),
(13, 'OS', 'Mac', 0),
(14, 'OS', 'Linux', 0),
(15, 'OS', 'FreeBSD', 0),
(16, 'OS', 'SunOS', 0),
(17, 'OS', 'IRIX', 0),
(18, 'OS', 'BeOS', 0),
(19, 'OS', 'OS/2', 0),
(20, 'OS', 'AIX', 0),
(21, 'OS', 'Other', 0);
اميدوارم كه خوشتون بياد. ضمناً خوشحال ميشم نظراتتون رو بدونم.
موفق و مؤيد باشيد.
 

maaha

Member
من تازه کارم تو php.میشه بگید کجا باید این کد رو وارد کنم؟تو صفحه ی اصلی وب سایتم؟یا اینکه فرقی نمیکنه.:-?
 

tarenoco

Member
خیلی ممنون از شما تو خط دوم

require_once("config.php");

این کد رو قرار دادید من این فایل رو چطوری باید بسازم که بتونه با دیتابیس ارتباط برقرار کنه ، من خیلی تازه کارم



 

MMSHFE

Member
این پست مال چهار سال قبله. از اون موقع تا حالا PHP کلی تغییر کرده و یکیش همینه که ereg و eregi منسوخ شدن. یکی دیگه هم اینکه توابع _mysql هم منسوخ شدن و بهتره از PDO یا MySQLi بجاش استفاده کنید. این هم نسخه بهینه شده و تکمیل شده کد فوق که بهتره از این نسخه جدید استفاده کنید:
PHP:
class UserAgent {
    private static $platform;
    private static $bits;
    private static $browser;
    private static $version;
    public static function Parse($u_agent = null) {
        if (!$u_agent && isset($_SERVER ['HTTP_USER_AGENT'])) {
            $u_agent = $_SERVER ['HTTP_USER_AGENT'];
        }

        self::$platform = 'Unknown';
        self::$bits = 'Unknown';
        self::$browser = 'Unknown';
        self::$version = 'Unknown';

        $empty = array (
            'platform' => self::$platform,
            'bits' => self::$bits,
            'browser' => self::$browser,
            'version' => self::$version,
        );

        if (!$u_agent) {
            return $empty;
        }

        if (preg_match('/\((.*?)\)/im', $u_agent, $parent_matches)) {
            preg_match_all ( '/(?P<platform>Android|CrOS|iPhone|iPad|Linux|Macintosh|Windows(\ Phone\ OS)?|Silk|linux-gnu|BlackBerry|PlayBook|Nintendo\ (WiiU?|3DS)|Xbox)
                (?:\ [^;]*)?
                (?:;|$)/imx', $parent_matches [1], $result, PREG_PATTERN_ORDER);

            $priority = array('Android', 'Xbox');
            self::$platform = array_unique($result['platform']);
            if (count($result['platform']) > 1) {
                if ($keys = array_intersect($priority, $result['platform'])) {
                    self::$platform = reset($keys);
                }
                else {
                    self::$platform = $result['platform'][0];
                }
            }
            elseif (isset($result['platform'][0])) {
                self::$platform = $result['platform'][0];
            }
        }

        if (self::$platform == 'linux-gnu') {
            self::$platform = 'Linux';
        }
        elseif (self::$platform == 'CrOS') {
            self::$platform = 'Chrome OS';
        }

        preg_match_all ('%(?P<browser>Camino|Kindle(\ Fire\ Build)?|Firefox|Iceweasel|Safari|MSIE|Trident/.*rv|AppleWebKit|Chrome|IEMobile|Opera|OPR|Silk|Lynx|Midori|Version|Wget|curl|NintendoBrowser|PLAYSTATION\ (\d|Vita)+)
            (?:\)?;?)
            (?:(?:[:/ ])(?P<version>[0-9A-Z.]+)|/(?:[A-Z]*))%ix', $u_agent, $result, PREG_PATTERN_ORDER);

        // If nothing matched, return null (to avoid undefined index errors)
        if (!isset($result['browser'][0]) || !isset($result['version'][0])) {
            return $empty;
        }

        self::$browser = $result['browser'][0];
        self::$version = $result['version'][0];

        $find = function($search, &$key) use($result) {
            $xkey = array_search (strtolower($search), array_map('strtolower', $result['browser']));
            if ($xkey !== false) {
                $key = $xkey;
                return true;
            }
            return false;
        };

        $key = 0;
        if (self::$browser == 'Iceweasel') {
            self::$browser = 'Firefox';
        }
        elseif ($find('Playstation Vita', $key)) {
            self::$platform = 'PlayStation Vita';
            self::$browser = 'Browser';
        }
        elseif ($find('Kindle Fire Build', $key) || $find('Silk', $key)) {
            self::$platform = 'Kindle Fire';
            self::$browser = $result['browser'][$key] == 'Silk' ? 'Silk' : 'Kindle';
            if (!(self::$version = $result['version'][$key]) || !is_numeric($version[0])) {
                self::$version = $result['version'][array_search('Version', $result['browser'])];
            }
        }
        elseif ($find('NintendoBrowser', $key) || self::$platform == 'Nintendo 3DS') {
            self::$browser = 'NintendoBrowser';
            self::$version = $result['version'][$key];
        }
        elseif ($find('Kindle', $key)) {
            self::$platform = 'Kindle';
            self::$browser = $result['browser'][$key];
            self::$version = $result['version'][$key];
        }
        elseif ($find('OPR', $key)) {
            self::$browser = 'Opera Next';
            self::$version = $result['version'][$key];
        }
        elseif ($find('Opera', $key)) {
            self::$browser = 'Opera';
            $find('Version', $key);
            self::$version = $result['version'][$key];
        }
        elseif ($find('Midori', $key)) {
            self::$browser = 'Midori';
            self::$version = $result['version'][$key];
        }
        elseif ($find('Chrome', $key)) {
            self::$browser = 'Chrome';
            self::$version = $result['version'][$key];
        }
        elseif (self::$browser == 'AppleWebKit') {
            if ((self::$platform == 'Android' && ! ($key = 0))) {
                self::$browser = 'Android Browser';
            }
            elseif ($platform == 'BlackBerry' || self::$platform == 'PlayBook') {
                self::$browser = 'BlackBerry Browser';
            }
            elseif ($find('Safari', $key)) {
                self::$browser = 'Safari';
            }

            $find ('Version', $key);

            self::$version = $result['version'][$key];
        }
        elseif (self::$browser == 'MSIE' || strpos (self::$browser, 'Trident') !== false) {
            if ($find ('IEMobile', $key)) {
                self::$browser = 'Internet Explorer (Mobile)';
            }
            else {
                self::$browser = 'Internet Explorer';
                $key = 0;
            }
            self::$version = $result['version'][$key];
        }
        elseif ($key = preg_grep('/playstation \d/i', array_map('strtolower', $result['browser']))) {
            $key = reset($key);

            self::$platform = 'PlayStation ' . preg_replace('/[^\d]/i', '', $key);
            self::$browser = 'NetFront';
        }

        if(in_array(self::$platform, array('Linux', 'Windows'))) {
            self::detectOS($u_agent);
        }
        return array (
            'platform' => self::$platform,
            'bits' => self::$bits,
            'browser' => self::$browser,
            'version' => self::$version,
        );
    }

    private static function detectOS($useragent) {
        if (preg_match('#(Windows|Win) ([a-zA-Z0-9.\ ]+)#i', $useragent, $regmatch)) {
            self::$platform = 'Windows' . ' ' . self::detectWin($regmatch[0]);
        }
        elseif (preg_match('/Mac/i', $useragent)) {
            self::$platform = 'Mac OS';
        }
        elseif (preg_match('/Linux/i', $useragent)) {
            self::detectDistro($useragent);
        }
        elseif (preg_match('/CrOS/', $useragent)) {
            self::$platform = 'Chrome OS';
        }
        elseif (preg_match('/FreeBSD/i', $useragent)) {
            self::$platform = 'FreeBSD';
        }
        elseif (preg_match('/OpenBSD/i', $useragent)) {
            self::$platform = 'OpenBSD';
        }
        elseif (preg_match('/Solaris/i', $useragent)) {
            self::$platform = 'Solaris';
        }
        elseif (preg_match('/Nintendo Wii/i', $useragent)) {
            self::$platform = 'Nintendo Wii';
        }
        elseif(preg_match('/Nintendo DSi/i', $useragent)) {
            self::$platform = 'Nintendo DSi';
        }
        elseif (preg_match('#SymbianOS/([.0-9a-zA-Z]+)#i', $useragent, $regmatch)) {
            self::$platform = 'SymbianOS';
        }
        else {
            self::$platform = 'Unknown';
        }

        if(preg_match('/(x86_64|win64|wow64)/i', $useragent)) {
            self::$bits = '64';
        }
        else {
            self::$bits = '32';
        }
    }

    //Detect GNU/Linux distros
    private static function detectDistro($useragent) {
        if(preg_match('/Debian/i', $useragent)) {
            self::$platform .= ' - Debian GNU/Linux';
        }
        elseif(preg_match('/CentOs/', $useragent)) {
            self::$platform .= ' - CentOs';
        }
        elseif(preg_match('/Gentoo/i', $useragent)) {
            self::$platform .= ' - Gentoo';
        }
        elseif(preg_match('/Fedora/i', $useragent)) {
            self::$platform .= ' - Fedora';
        }
        elseif(preg_match('/Xubuntu/i', $useragent)) {
            self::$platform .= ' - Xubuntu';
        }
        elseif(preg_match('/Kubuntu/i', $useragent)) {
            self::$platform .= ' - Kubuntu';
        }
        elseif(preg_match('/Edubuntu/i', $useragent)) {
            self::$platform .= ' - Edubuntu';
        }
        elseif(preg_match('/Ubuntu/i', $useragent)) {
            self::$platform .= ' - Ubuntu';
        }
        elseif(preg_match('/Arch\ Linux/', $useragent)) {
            self::$platform .= ' - ArchLinux';
        }
        elseif(preg_match('/Mandriva/i', $useragent)) {
            self::$platform .= ' - Mandriva';
        }
        elseif(preg_match('/Mint/i', $useragent)) {
            self::$platform .= ' - Linux Mint';
        }
        elseif(preg_match('/Slackware/i', $useragent)) {
            self::$platform .= ' - Slackware';
        }
        elseif(preg_match('/PCLinuxOS/i', $useragent)) {
            self::$platform .= ' - PCLinuxOS';
        }
        elseif(preg_match('/OLPC/i', $useragent)) {
            self::$platform .= ' - OLPC (XO)';
        }
        elseif(preg_match('/Suse/i', $useragent)) {
            self::$platform .= ' - SuSE';
        }
        elseif(preg_match('/Zenwalk/i', $useragent)) {
            self::$platform .= ' - Zenwalk GNU Linux';
        }
        elseif(preg_match('/venenux/i', $useragent)) {
            self::$platform .= ' - Venenux GNU Linux';
        }
        elseif(preg_match('/Android/i', $useragent)) {
            self::$platform .= ' - Android';
        }
        else {
            self::$platform .= ' - GNU/Linux';
        }
    }

    //Detect Windows Version:
    private static function detectWin($ver_match) {
        if (preg_match('/NT 6.0/i', $ver_match)) {
            self::$platform .= ' Vista';
        }
        elseif (preg_match('/NT 5.1/i', $ver_match)) {
            self::$platform .= ' XP';
        }
        elseif (preg_match('/NT 5.0/i', $ver_match)) {
            self::$platform .= ' 2000';
        }
        elseif (preg_match('/9x 4.90/i', $ver_match)) {
            self::$platform .= ' ME';
        }
        elseif (preg_match('/NT4.0/i', $ver_match)) {
            self::$platform .= ' NT 4';
        }
        elseif (preg_match('/Win98/i', $ver_match)) {
            self::$platform .= ' 98';
        }
        elseif (preg_match('/CE/i', $ver_match)) {
            self::$platform .= ' CE';
        }
        elseif (preg_match('/NT 6.1|NT 7.0/i', $ver_match)) {
            self::$platform .= ' 7';
        }
        elseif (preg_match('/NT 6.2/i', $ver_match)) {
            self::$platform .= ' 8';
        }
        elseif (preg_match('/NT 6.3/i', $ver_match)) {
            self::$platform .= ' 8.1';
        }
        elseif (preg_match('/NT/i', $ver_match)) {
            self::$platform .= ' NT';
        }
        else {
            self::$platform .= ' Unknown Version';
        }
    }
}
یک مثال از نحوه استفاده:
PHP:
list($platform, $bits, $browser, $version) = array_values(UserAgent::Parse());
دیگه اینکه چطوری متغیرهای platform$ و bits$ و browser$ و version$ رو توی دیتابیس خودتون ذخیره کنید یا هر استفاده دیگه ازش کنید رو بعهده خودتون میگذاره.
 
آخرین ویرایش:

tarenoco

Member
این پست مال چهار سال قبله. از اون موقع تا حالا PHP کلی تغییر کرده و یکیش همینه که ereg و eregi منسوخ شدن. بهتره از این نسخه جدید استفاده کنید:
PHP:
class UserAgent {
    private static $platform;
    private static $bits;
    private static $browser;
    private static $version;
    public static function Parse($u_agent = null) {
        if (!$u_agent && isset($_SERVER ['HTTP_USER_AGENT'])) {
            $u_agent = $_SERVER ['HTTP_USER_AGENT'];
        }

        self::$platform = 'Unknown';
        self::$bits = 'Unknown';
        self::$browser = 'Unknown';
        self::$version = 'Unknown';

        $empty = array (
            'platform' => self::$platform,
            'bits' => self::$bits,
            'browser' => self::$browser,
            'version' => self::$version,
        );

        if (!$u_agent) {
            return $empty;
        }

        if (preg_match('/\((.*?)\)/im', $u_agent, $parent_matches)) {
            preg_match_all ( '/(?P<platform>Android|CrOS|iPhone|iPad|Linux|Macintosh|Windows(\ Phone\ OS)?|Silk|linux-gnu|BlackBerry|PlayBook|Nintendo\ (WiiU?|3DS)|Xbox)
                (?:\ [^;]*)?
                (?:;|$)/imx', $parent_matches [1], $result, PREG_PATTERN_ORDER);

            $priority = array('Android', 'Xbox');
            self::$platform = array_unique($result['platform']);
            if (count($result['platform']) > 1) {
                if ($keys = array_intersect($priority, $result['platform'])) {
                    self::$platform = reset($keys);
                }
                else {
                    self::$platform = $result['platform'][0];
                }
            }
            elseif (isset($result['platform'][0])) {
                self::$platform = $result['platform'][0];
            }
        }

        if (self::$platform == 'linux-gnu') {
            self::$platform = 'Linux';
        }
        elseif (self::$platform == 'CrOS') {
            self::$platform = 'Chrome OS';
        }

        preg_match_all ('%(?P<browser>Camino|Kindle(\ Fire\ Build)?|Firefox|Iceweasel|Safari|MSIE|Trident/.*rv|AppleWebKit|Chrome|IEMobile|Opera|OPR|Silk|Lynx|Midori|Version|Wget|curl|NintendoBrowser|PLAYSTATION\ (\d|Vita)+)
            (?:\)?;?)
            (?:(?:[:/ ])(?P<version>[0-9A-Z.]+)|/(?:[A-Z]*))%ix', $u_agent, $result, PREG_PATTERN_ORDER);

        // If nothing matched, return null (to avoid undefined index errors)
        if (!isset($result['browser'][0]) || !isset($result['version'][0])) {
            return $empty;
        }

        self::$browser = $result['browser'][0];
        self::$version = $result['version'][0];

        $find = function($search, &$key) use($result) {
            $xkey = array_search (strtolower($search), array_map('strtolower', $result['browser']));
            if ($xkey !== false) {
                $key = $xkey;
                return true;
            }
            return false;
        };

        $key = 0;
        if (self::$browser == 'Iceweasel') {
            self::$browser = 'Firefox';
        }
        elseif ($find('Playstation Vita', $key)) {
            self::$platform = 'PlayStation Vita';
            self::$browser = 'Browser';
        }
        elseif ($find('Kindle Fire Build', $key) || $find('Silk', $key)) {
            self::$platform = 'Kindle Fire';
            self::$browser = $result['browser'][$key] == 'Silk' ? 'Silk' : 'Kindle';
            if (!(self::$version = $result['version'][$key]) || !is_numeric($version[0])) {
                self::$version = $result['version'][array_search('Version', $result['browser'])];
            }
        }
        elseif ($find('NintendoBrowser', $key) || self::$platform == 'Nintendo 3DS') {
            self::$browser = 'NintendoBrowser';
            self::$version = $result['version'][$key];
        }
        elseif ($find('Kindle', $key)) {
            self::$platform = 'Kindle';
            self::$browser = $result['browser'][$key];
            self::$version = $result['version'][$key];
        }
        elseif ($find('OPR', $key)) {
            self::$browser = 'Opera Next';
            self::$version = $result['version'][$key];
        }
        elseif ($find('Opera', $key)) {
            self::$browser = 'Opera';
            $find('Version', $key);
            self::$version = $result['version'][$key];
        }
        elseif ($find('Midori', $key)) {
            self::$browser = 'Midori';
            self::$version = $result['version'][$key];
        }
        elseif ($find('Chrome', $key)) {
            self::$browser = 'Chrome';
            self::$version = $result['version'][$key];
        }
        elseif (self::$browser == 'AppleWebKit') {
            if ((self::$platform == 'Android' && ! ($key = 0))) {
                self::$browser = 'Android Browser';
            }
            elseif ($platform == 'BlackBerry' || self::$platform == 'PlayBook') {
                self::$browser = 'BlackBerry Browser';
            }
            elseif ($find('Safari', $key)) {
                self::$browser = 'Safari';
            }

            $find ('Version', $key);

            self::$version = $result['version'][$key];
        }
        elseif (self::$browser == 'MSIE' || strpos (self::$browser, 'Trident') !== false) {
            if ($find ('IEMobile', $key)) {
                self::$browser = 'Internet Explorer (Mobile)';
            }
            else {
                self::$browser = 'Internet Explorer';
                $key = 0;
            }
            self::$version = $result['version'][$key];
        }
        elseif ($key = preg_grep('/playstation \d/i', array_map('strtolower', $result['browser']))) {
            $key = reset($key);

            self::$platform = 'PlayStation ' . preg_replace('/[^\d]/i', '', $key);
            self::$browser = 'NetFront';
        }

        if(in_array(self::$platform, array('Linux', 'Windows'))) {
            self::detectOS($u_agent);
        }
        return array (
            'platform' => self::$platform,
            'bits' => self::$bits,
            'browser' => self::$browser,
            'version' => self::$version,
        );
    }

    private static function detectOS($useragent) {
        if (preg_match('#(Windows|Win) ([a-zA-Z0-9.\ ]+)#i', $useragent, $regmatch)) {
            self::$platform = 'Windows' . ' ' . self::detectWin($regmatch[0]);
        }
        elseif (preg_match('/Mac/i', $useragent)) {
            self::$platform = 'Mac OS';
        }
        elseif (preg_match('/Linux/i', $useragent)) {
            self::detectDistro($useragent);
        }
        elseif (preg_match('/CrOS/', $useragent)) {
            self::$platform = 'Chrome OS';
        }
        elseif (preg_match('/FreeBSD/i', $useragent)) {
            self::$platform = 'FreeBSD';
        }
        elseif (preg_match('/OpenBSD/i', $useragent)) {
            self::$platform = 'OpenBSD';
        }
        elseif (preg_match('/Solaris/i', $useragent)) {
            self::$platform = 'Solaris';
        }
        elseif (preg_match('/Nintendo Wii/i', $useragent)) {
            self::$platform = 'Nintendo Wii';
        }
        elseif(preg_match('/Nintendo DSi/i', $useragent)) {
            self::$platform = 'Nintendo DSi';
        }
        elseif (preg_match('#SymbianOS/([.0-9a-zA-Z]+)#i', $useragent, $regmatch)) {
            self::$platform = 'SymbianOS';
        }
        else {
            self::$platform = 'Unknown';
        }

        if(preg_match('/(x86_64|win64|wow64)/i', $useragent)) {
            self::$bits = '64';
        }
        else {
            self::$bits = '32';
        }
    }

    //Detect GNU/Linux distros
    private static function detectDistro($useragent) {
        if(preg_match('/Debian/i', $useragent)) {
            self::$platform .= ' - Debian GNU/Linux';
        }
        elseif(preg_match('/CentOs/', $useragent)) {
            self::$platform .= ' - CentOs';
        }
        elseif(preg_match('/Gentoo/i', $useragent)) {
            self::$platform .= ' - Gentoo';
        }
        elseif(preg_match('/Fedora/i', $useragent)) {
            self::$platform .= ' - Fedora';
        }
        elseif(preg_match('/Xubuntu/i', $useragent)) {
            self::$platform .= ' - Xubuntu';
        }
        elseif(preg_match('/Kubuntu/i', $useragent)) {
            self::$platform .= ' - Kubuntu';
        }
        elseif(preg_match('/Edubuntu/i', $useragent)) {
            self::$platform .= ' - Edubuntu';
        }
        elseif(preg_match('/Ubuntu/i', $useragent)) {
            self::$platform .= ' - Ubuntu';
        }
        elseif(preg_match('/Arch\ Linux/', $useragent)) {
            self::$platform .= ' - ArchLinux';
        }
        elseif(preg_match('/Mandriva/i', $useragent)) {
            self::$platform .= ' - Mandriva';
        }
        elseif(preg_match('/Mint/i', $useragent)) {
            self::$platform .= ' - Linux Mint';
        }
        elseif(preg_match('/Slackware/i', $useragent)) {
            self::$platform .= ' - Slackware';
        }
        elseif(preg_match('/PCLinuxOS/i', $useragent)) {
            self::$platform .= ' - PCLinuxOS';
        }
        elseif(preg_match('/OLPC/i', $useragent)) {
            self::$platform .= ' - OLPC (XO)';
        }
        elseif(preg_match('/Suse/i', $useragent)) {
            self::$platform .= ' - SuSE';
        }
        elseif(preg_match('/Zenwalk/i', $useragent)) {
            self::$platform .= ' - Zenwalk GNU Linux';
        }
        elseif(preg_match('/venenux/i', $useragent)) {
            self::$platform .= ' - Venenux GNU Linux';
        }
        elseif(preg_match('/Android/i', $useragent)) {
            self::$platform .= ' - Android';
        }
        else {
            self::$platform .= ' - GNU/Linux';
        }
    }

    //Detect Windows Version:
    private static function detectWin($ver_match) {
        if (preg_match('/NT 6.0/i', $ver_match)) {
            self::$platform .= ' Vista';
        }
        elseif (preg_match('/NT 5.1/i', $ver_match)) {
            self::$platform .= ' XP';
        }
        elseif (preg_match('/NT 5.0/i', $ver_match)) {
            self::$platform .= ' 2000';
        }
        elseif (preg_match('/9x 4.90/i', $ver_match)) {
            self::$platform .= ' ME';
        }
        elseif (preg_match('/NT4.0/i', $ver_match)) {
            self::$platform .= ' NT 4';
        }
        elseif (preg_match('/Win98/i', $ver_match)) {
            self::$platform .= ' 98';
        }
        elseif (preg_match('/CE/i', $ver_match)) {
            self::$platform .= ' CE';
        }
        elseif (preg_match('/NT 6.1|NT 7.0/i', $ver_match)) {
            self::$platform .= ' 7';
        }
        elseif (preg_match('/NT 6.2/i', $ver_match)) {
            self::$platform .= ' 8';
        }
        elseif (preg_match('/NT 6.3/i', $ver_match)) {
            self::$platform .= ' 8.1';
        }
        elseif (preg_match('/NT/i', $ver_match)) {
            self::$platform .= ' NT';
        }
        else {
            self::$platform .= ' Unknown Version';
        }
    }
}
یک مثال از نحوه استفاده:
PHP:
list($platform, $bits, $browser, $version) = array_values(UserAgent::Parse());

خیلی ممنون از شما
من میخوام یه کادر داشته باشم مثل شکل زیر
Untitled.jpg
وقتی کاربر ایمیل رو وارد میکنه و ارسال رو میزنه فایلی که من تو هاست قرار دادم به ایمیلی که وارد کرده ارسال شه

این کار رو برای آیفون و آیپد میخوام انجام بدم که احتیاج هست فایل رو به ایمیل ضمیمه کنند

و لازم نباشه یه بار دانلود کنند و دستی به ایمیلشون ضمیمه کنند

ممنون میشم کمک کنید
 

MMSHFE

Member
لطفاً تاپیک جدا در بخش پرسش و پاسخ ایجاد کنید. سؤالتون ارتباطی به موضوع این تاپیک نداره.
 

جدیدترین ارسال ها

بالا