Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] wykrywanie telefonu komórkowego
Forum PHP.pl > Forum > Przedszkole
marcinek37
Znalazłam taki artykuł: http://blog.piotrnalepa.pl/2010/06/25/php-...pomoca-komorki/
Skopiowałem klasę uagent_info() i wkleiłem ją do pliku "mdetect.php"

następnie w pliku .php dodałem kod:
  1. <?
  2. include('mdetect.php');
  3. $uagent_info = new uagent_info();
  4. $uagent_info->DetectMobileQuick();
  5. $mobile_check = $uagent_info;
  6. if($mobile_check == true){ echo'Korzystasz z telefonu'; } else{ echo'Korzystasz z komputera'; }
  7. ?>


i pokazuje mi się komunikat, że korzystam z telefonu komórkowego, a tak naprawdę używam laptopa... co zrobiłem nie tak? a może ta klasa jest wadliwa i jest o wiele lepszy sposób na wykrycie telefonu komórkowego?
Michael2318
http://forum.php.pl/index.php?showtopic=168238
marcinek37
w tym temacie jest przedstawionych kilka koncepcji i na dodatek są odwołania do innego forum
sam temat jest sprzed ponad roku

jaki kod do wykrywania telefonów jest najbardziej aktualny i najlepszy? bo znalezienie kodu to nie wielki problem, sam znalazłem taki jeszcze przed założeniem tematu:
  1. <?
  2. function check_is_mobile($pv_browser_user_agent){
  3. $mobile_working_test = '';
  4. $a_mobile_search = array('android', 'epoc', 'linux armv', 'palmos', 'palmsource', 'windows ce', 'symbianos', 'symbian os', 'symbian', 'webos', 'benq', 'blackberry', 'danger hiptop', 'ddipocket', ' droid', 'htc_dream', 'htc hero', 'ipod', 'iphone', 'kindle', 'lge-cx', 'lge-lx', 'lge-mx', 'lge vx', 'lge ', 'lge-', 'lg;lx', 'nintendo wii', 'nokia', 'palm', 'pdxgw', 'playstation', 'sagem', 'samsung', 'sec-sgh', 'sharp', 'sonyericsson', 'sprint', 'j-phone', 'n410', 'mot 24', 'mot-', 'htc-', 'htc_', 'sec-', 'sie-m', 'sie-s', 'spv ', 'vodaphone', 'smartphone', 'armv', 'midp', 'mobilephone', 'avantgo', 'blazer', 'elaine', 'eudoraweb', 'iemobile', 'minimo', 'mobile safari', 'mobileexplorer', 'opera mobi', 'opera mini', 'netfront', 'opwv', 'polaris', 'semc-browser', 'up.browser', 'webpro', 'wms pie', 'xiino', 'astel', 'docomo', 'novarra-vision', 'portalmmm', 'reqwirelessweb', 'vodafone');
  5. $j_count = count($a_mobile_search);
  6. for($j = 0; $j < $j_count; $j++){
  7. if(stristr($pv_browser_user_agent, $a_mobile_search[$j])){ $mobile_working_test = $a_mobile_search[$j]; break; }
  8. }
  9. return $mobile_working_test;
  10. }
  11.  
  12.  
  13. if(check_is_mobile($_SERVER["HTTP_USER_AGENT"])){ echo("komorka"); }
  14. else{ echo("komputer"); }
  15. ?>


ale jestem przekonany, że są lepsze
!*!
Tak z ciekawości, po co Ci wykrywanie czy połączenie jest z tel czy nie? Symfony2/Zend mają odpowiednie klasy do tego.
marcinek37
chcę, aby telefony komórkowe były przeniesione na inny adres

możesz podać kod takich klas?
pitu
Ostatnio ktoś o to samo pytał na forum, zobacz:
http://mobiledetect.net/
marcinek37
  1. <?
  2. require_once 'Mobile_Detect.php';
  3. $detect = new Mobile_Detect;
  4. $deviceType = ($detect->isMobile() ? ($detect->isTablet() ? 'tablet' : 'phone') : 'computer');
  5.  
  6. echo $deviceType;
  7. ?>


czyli jeżeli $deviceType będzie mieć inną wartość niż "computer", oznacza, że korzysta ze sprzętu przenoścnego
aktualnie nie ma lepszego skryptu? jeśli nie, to bardzo dziękuję za pomoc

http://www.scientiamobile.com/wurflCloud/g...ed#installation - jeszcze coś takiego znalazłem
sam nie wiem, co jest lepsze
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.