Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Google Chrome
red9skull
post
Post #1





Grupa: Zarejestrowani
Postów: 157
Pomógł: 0
Dołączył: 11.07.2009
Skąd: root

Ostrzeżenie: (10%)
X----


Siema! Mam taki kod programu, który identyfikuje przeglądarkę i system operacyjny:
  1. <?php
  2. $useragent = $row['user_agent'];
  3. $ua = '';
  4. $ua_description = '';
  5. // if ($useragent)
  6. // {
  7. $ua = strtolower($useragent);
  8. $ua_browser = 'unknown';
  9. $ua_os = 'unknown';
  10.  
  11. // Browser detection:
  12. if (strpos($ua, 'aweb') !== false) $ua_browser = 'AWeb';
  13. else if (strpos($ua, 'camino') !== false) $ua_browser = 'Camino';
  14. else if (strpos($ua, 'epiphany') !== false) $ua_browser = 'Epiphany';
  15. else if (strpos($ua, 'galeon') !== false) $ua_browser = 'Galeon';
  16. else if (strpos($ua, 'hotjava') !== false) $ua_browser = 'HotJava';
  17. else if (strpos($ua, 'icab') !== false) $ua_browser = 'iCab';
  18. else if (strpos($ua, 'safari') !== false) $ua_browser = 'Safari';
  19. else if (strpos($ua, 'granparadiso') !== false) $ua_browser = 'GranParadiso';
  20. else if (strpos($ua, 'konqueror') !== false) $ua_browser = 'Konqueror';
  21. else if (strpos($ua, 'flock') !== false) $ua_browser = 'Flock';
  22. else if (strpos($ua, 'iceweasel') !== false) $ua_browser = 'Iceweasel';
  23. else if (strpos($ua, 'seamonkey') !== false) $ua_browser = 'SeaMonkey';
  24. else if (strpos($ua, 'firefox') !== false) $ua_browser = 'Firefox';
  25. else if (strpos($ua, 'chrome') !== false) $ua_browser = 'Chrome';
  26. else if (strpos($ua, 'firebird') !== false) $ua_browser = 'Firebird';
  27. else if (strpos($ua, 'netscape') !== false) $ua_browser = 'Netscape';
  28. else if (strpos($ua, 'mozilla') !== false && strpos($ua, 'rv:') !== false) $ua_browser = 'Mozilla';
  29. else if (strpos($ua, 'opera') !== false) $ua_browser = 'Opera';
  30. else if (strpos($ua, 'avant browser') !== false) $ua_browser = 'AvantBrowser';
  31. else if (strpos($ua, 'maxthon') !== false || strpos($ua, 'myie') !== false) $ua_browser = 'Maxthon';
  32. else if (strpos($ua, 'phaseout') !== false) $ua_browser = 'PhaseOut';
  33. else if (strpos($ua, 'slimbrowser') !== false) $ua_browser = 'SlimBrowser';
  34. else if (strpos($ua, 'msie') !== false)
  35. {
  36. if (intval(substr($ua, strpos($ua, 'msie')+5)) > 6) $ua_browser = 'MSIE7';
  37. else $ua_browser = 'MSIE';
  38. }
  39.  
  40. // OS detection:
  41. if (strpos($ua, 'amiga') !== false) $ua_os = 'Amiga';
  42. else if (strpos($ua, 'beos; ') !== false) $ua_os = 'BeOS';
  43. else if (strpos($ua, 'freebsd') !== false) $ua_os = 'FreeBSD';
  44. else if (strpos($ua, 'hp-ux') !== false) $ua_os = 'HP-UX';
  45. else if (strpos($ua, 'linux') !== false)
  46. {
  47. if (strpos($ua, 'centos') !== false || strpos($ua, 'cent os') !== false) $ua_os = 'CentOS';
  48. else if (strpos($ua, 'debian') !== false) $ua_os = 'Debian';
  49. else if (strpos($ua, 'fedora') !== false) $ua_os = 'Fedora';
  50. else if (strpos($ua, 'freespire') !== false) $ua_os = 'Freespire';
  51. else if (strpos($ua, 'gentoo') !== false) $ua_os = 'Gentoo';
  52. else if (strpos($ua, 'kanotix') !== false) $ua_os = 'Kanotix';
  53. else if (strpos($ua, 'kateos') !== false || strpos($ua, 'kate os') !== false) $ua_os = 'KateOS';
  54. else if (strpos($ua, 'knoppix') !== false) $ua_os = 'Knoppix';
  55. else if (strpos($ua, 'kubuntu') !== false) $ua_os = 'Kubuntu';
  56. else if (strpos($ua, 'linspire') !== false) $ua_os = 'Linspire';
  57. else if (strpos($ua, 'mandriva') !== false || strpos($ua, 'mandrake') !== false) $ua_os = 'Mandriva';
  58. else if (strpos($ua, 'redhat') !== false || strpos($ua, 'red hat') !== false) $ua_os = 'RedHat';
  59. else if (strpos($ua, 'slackware') !== false) $ua_os = 'Slackware';
  60. else if (strpos($ua, 'slax') !== false) $ua_os = 'Slax';
  61. else if (strpos($ua, 'suse') !== false) $ua_os = 'Suse';
  62. else if (strpos($ua, 'xubuntu') !== false) $ua_os = 'Xubuntu';
  63. else if (strpos($ua, 'ubuntu') !== false) $ua_os = 'Ubuntu';
  64. else if (strpos($ua, 'xandros') !== false) $ua_os = 'Xandros';
  65. else if (strpos($ua, 'arch') !== false) $ua_os = 'Arch';
  66. else if (strpos($ua, 'ark') !== false) $ua_os = 'Ark';
  67. else $ua_os = 'Linux';
  68. }
  69. else if (strpos($ua, 'macosx') !== false || strpos($ua, 'macos') !== false || strpos($ua, 'mac os x') !== false || strpos($ua, 'macintosh') !== false || strpos($ua, 'os=mac') !== false || strpos($ua, 'mac_osx') !== false) $ua_os = 'MacOSX';
  70. else if (strpos($ua, 'macppc') !== false || strpos($ua, 'mac_ppc') !== false || strpos($ua, 'cpu=ppc;') !== false && strpos($ua, 'os=mac') !== false || strpos($ua, 'macintosh; ppc') !== false || strpos($ua, 'macintosh;') !== false && strpos($ua, 'ppc') !== false || strpos($ua, 'mac_powerpc') !== false) $ua_os = 'MacPPC';
  71. else if (strpos($ua, 'netbsd') !== false) $ua_os = 'NetBSD';
  72. else if (strpos($ua, 'os/2') !== false) $ua_os = 'OS/2';
  73. else if (strpos($ua, 'avantgo') !== false) $ua_os = 'Palm';
  74. else if (strpos($ua, 'sunos') !== false || strpos($ua, 'solaris') !== false) $ua_os = 'SunOS';
  75. else if (strpos($ua, 'symbian') !== false) $ua_os = 'SymbianOS';
  76. else if (strpos($ua, 'unix') !== false) $ua_os = 'Unix';
  77. else if (strpos($ua, 'windows nt 6.0') !== false || strpos($ua, 'winnt6.0') !== false) $ua_os = 'WindowsVista';
  78. else if (strpos($ua, 'windows nt 5.1') !== false || strpos($ua, 'windows xp 5.1') !== false || strpos($ua, 'windows xp') !== false || strpos($ua, 'winxp') !== false || strpos($ua, 'winnt5.1') !== false || strpos($ua, 'cygwin_nt-5.1') !== false || strpos($ua, 'windows nt 5.0') !== false || strpos($ua, 'windows 2000') !== false || strpos($ua, 'win2000') !== false || strpos($ua, 'winnt5.0') !== false || strpos($ua, 'windows nt 5.2') !== false || strpos($ua, 'winnt5.2') !== false) $ua_os = 'WindowsXP';
  79. else if (strpos($ua, 'windows') !== false || strpos($ua, 'win') !== false) $ua_os = 'Windows';
  80. else if (strpos($ua, 'macintosh') !== false || strpos($ua, 'mac') !== false) $ua_os = 'Macintosh';
  81. else if (strpos($ua, 'sun') !== false) $ua_os = 'Sun';
  82.  
  83. $ua = '<img src="images/user_agent/os/' . htmlspecialchars(ereg_replace('[^a-z0-9_]', '', strtolower($ua_os))) . '.png" title="' . htmlspecialchars($ua_os) . '" alt="' . htmlspecialchars($ua_os) . '" style="margin-right: 1px"/>' . '<img src="images/user_agent/browser/' . htmlspecialchars(ereg_replace('[^a-z0-9_]', '', strtolower($ua_browser))) . '.png" title="' . htmlspecialchars($useragent) . '" alt="' . htmlspecialchars($ua_browser) . '" style="margin-left: 1px"/>';
  84.  
  85. $ua_description = addslashes($useragent) . '\n\nSystem:\t\t' . addslashes($ua_os) .'\nPrzeglądarka:\t' . addslashes($ua_browser) . '\n\t' ;
  86. // }
  87. // else $ua = '';
  88. if ($ua && $ua_description) $ua = '<span style="cursor: pointer" onclick="alert(\'' . htmlspecialchars($ua_description) . '\')">' . $ua . '</span>';
  89.  
  90. //Tutaj mam zakomentowane linie "if ($useragent)", "{", "}", "else $ua = '';" czyli jak nie będzie identyfikacji to będą zamiast tego ikonki "?". Dla postów napisanych przed wprowadzeniem tego moda też będą "?" (z powodu braku identyfikacji - chyba to oczywiste ;) ). Jak chcesz żeby nie było ikonek przy braku identyfikacji to poprostu odkomentuj te linie.
  91. ?>


Wiece może co mam dopisać żeby identyfikowało również przeglądarkę Google Chrome?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 02:13