Seitenaufruf mit Handy erkennen??

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Seitenaufruf mit Handy erkennen??

    Hallo PHPler,

    ich stehe vor einem kleinen Problem und konnte bis jetzt leider keine Lösung finden.

    Gibt es eine Möglichkeit bei einem Seitenaufruf zu erkennen ob dieser Aufruf von einem Handy aufgerufen wird? Mir ist leider keine Möglichkeit bekannt und ich kann mir nicht vorstellen wie das funktionieren sollte.

    Gehe ich recht in der annahme das dies nicht möglich ist? Oder kennt doch jemand eine Lösung?!

  • #2
    Mache senden ihre Telefonnummer im Request mit.
    Auch die Browserkennung könnte Informationen liefern
    Untersuche mal das $_SERVER Array.
    http://www.zytrax.com/tech/web/mobile_ids.html
    Wir werden alle sterben

    Kommentar


    • #3
      Re: Seitenaufruf mit Handy erkennen??

      Original geschrieben von onkelgigal
      Gibt es eine Möglichkeit bei einem Seitenaufruf zu erkennen ob dieser Aufruf von einem Handy aufgerufen wird?
      Keine 100-prozentig sichere.

      Mir ist leider keine Möglichkeit bekannt und ich kann mir nicht vorstellen wie das funktionieren sollte.
      Es gibt (mindestens) zwei Ansätze, um mobile Web-Clients genauer zu identifizieren. Über diese kannst du auch die Fähigkeiten des Gerät, auf dem der Client läuft, näher bestimmen. Sie tragen lustige Namen:

      UAProf: User Agent Profile

      WURFL: Wireless Universal Resource File
      Für letzteres gibts eine fertige PHP-Library.
      Zuletzt geändert von fireweasel; 18.03.2009, 11:49.
      Klingon function calls do not have “parameters”‒they have “arguments”‒and they always win them!

      Kommentar


      • #4
        Kleiner Ansatz für alle die mal vor dem gleichen Problem stehen:



        PHP-Code:
        <?php

        /* MOBILE DETECT */

        $mobile_browser '0';

        if(
        preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone)/i'strtolower($_SERVER['HTTP_USER_AGENT']))):
            
        $mobile_browser++;
        endif;

        if((
        strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml')>0) or ((isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE'])))):
            
        $mobile_browser++;
        endif;

        $mobile_ua strtolower(substr($_SERVER['HTTP_USER_AGENT'],0,4));

        $mobile_agents = array('w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac',
                               
        'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno',
                               
        'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-',
                               
        'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-',
                               
        'newt','noki','oper','palm','pana','pant','phil','play','port','prox',
                               
        'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar',
                               
        'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-',
                               
        'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp',
                               
        'wapr','webc','winw','winw','xda','xda-');

        if(
        in_array($mobile_ua,$mobile_agents)):
            
        $mobile_browser++;
        endif;

        if(
        strpos(strtolower($_SERVER['ALL_HTTP']),'operamini')>0):
            
        $mobile_browser++; 
        endif;

        if(
        strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'windows')>0):
            
        $mobile_browser=0;
        endif;

        if(
        strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'iemobile')>0):
            
        $mobile_browser++;
        endif;

        if(
        strpos(strtolower($_SERVER['HTTP_USER_AGENT']),' ppc;')>0):
            
        $mobile_browser++;
        endif;

        if(
        $mobile_browser>0):
           echo 
        "mobile";
        else:
            echo 
        "nix mobile";
        endif;

        ?>

        Kommentar


        • #5
          PHP-Code:
          // ...
          $mobile_agents = array( 
          // ...
            
          'oper',
          // ...
          );

          if(
          in_array($mobile_ua,$mobile_agents)):
              
          $mobile_browser++;
          endif; 
          Es soll auch Oper(a)-Browser geben, die auf "gewöhnlichen" PCs (Desktop, Notebook etc.) laufen ...

          PHP-Code:
          // ...
          if(strpos(strtolower($_SERVER['ALL_HTTP']),'operamini')>0):
              
          $mobile_browser++; 
          endif;
          // ... 
          Ich glaube nicht, dass OperaMini in der Lage ist, auf dem Webserver eine CGI-Variable namens 'ALL_HTTP' zu setzen ...

          Entweder sie heißt 'HTTP_ALL' oder der Autor des Scriptes hat nicht wirklich den Durchblick.
          Klingon function calls do not have “parameters”‒they have “arguments”‒and they always win them!

          Kommentar

          Lädt...
          X