WML oder HTM abhängig vom Browser/Clientgerät!?

  • Hallo,


    ich habe im Rahmen meines Studiums ein Projekt mit PHP und MySQL gemacht. Aussehen und Programmcode sind streng getrennt, weshalb ich z.B. die HTM-Templates leicht durch WML-Templates ersetzen könnte.


    Meine Frage/mein Problem ist nun, dass ich das nicht ersetzen, sondern ergänzen will, also dem Benutzer die Wahl lassen möchte, ob er WML oder HTM angezeigt haben will. Allerdings nicht in der Art, dass der User selbst sagt "Will WML haben", sondern dass das abhängig davon, mit was für einem Gerät/Browser er auf die Seite zugreift entweder als HTM (für Rechner) oder WML (Für Handys) ausgegeben wird.


    Wie kann ich das realisieren!?


    Danke schonmal für Eure Hilfe
    Grüsse
    Saschix

  • Schau mal in die Variable ( http://de.php.net/reserved.variables )


    $_SERVER['ACCEPT']


    welche den ACCEPT-Teil des HTTP-Headers welcher vom Browser mit der Anfrage geschickt wird, enthält. Bei einem "normalen" Browser findest du dort bspw. etwas wie:


    Zitat

    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5


    Was das genau heißt kannst du hier nachlesen:
    http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html


    Wichtig ist in diesem Fall nur:
    text/html (und ggf. application/xhtml+xml für XHTML, wobei jeder Browser der das versteht AFAIK auch text/html versteht)


    Die Mimetypes für die verschiedenen WML-Standards müsstest du dir nochmal raussuchen. Da gibts auf jeden Fall text/vnd.wap.wml (WML), text/vnd.wap.wmlscript (WMLScript), image/vnd.wap.wbmp (WML BMP) und eben die neueren (hab mich da nicht mit beschäftigt).


    Dann kannst du selber entscheiden wie "elegant deine Lösung sein will. Also ob du einfach nur ein "wildes" matchen nach dem String "wap" machen willst, oder ob du alle gängigen Mimetypes identifizieren willst, und dann anhand der vom Browser definierten Gewichtung ihm das bevorzugte Format auslieferst. (Jedenfalls theoretisch - wie stark diese Option in der Praxis genutzt wird, weiß ich nicht)


    Hier noch ein paar Beispiele aus der Praxis für die Header: http://webcab.de/wbhhe.xhtml Mit einbisschen Googeln und den richtigen Stichworten findest du sicherlich noch mehr.

    "That's not a hair question. I'm sorry." - 01/31/07 - Never forget!

  • Hi Sencer,


    *wooow* erstmal ein herzliches Dankeschön geträllert, das werd ich mal ausprobieren :top:


    Grüsse
    Saschix

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!