2 Fragen

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

  • 2 Fragen

    hi @all
    hab da mal zwei kurze Fragen

    erstens:
    Gibt es ein Skript, welches ich den jeweiligen Browser ermitteln kann
    ich weiss dass es eine vordefinierte Variable gibt (HTTP_USER_AGENT), aber das ist nicht das was ich suche.
    Die Ausgabe ist von $HTTP_USER_AGENT nämlich diese -> Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; QXW0334s)

    Ich würde aber gerne irgendwie den Browser also das (MSIE 5.5) nur auslesen und dann so ungefähr benützen

    PHP-Code:
    if ($browser=MSIE(<5.0)) {
    header(MSIEoptimierteSite.php)
    };

    elseif (
    $browser=Netscape(<4.0)) {
    header(Netscapeoptimiertesite.php)
    }; 
    also so in der art soll das dann nachher aussehen.


    Mein zweite Frage:
    Es geht um die IP. Ich habe gesehen das in manchen Internetapps (Foren,Chats, GBs usw) man als Admin einsehen konnte mit welcher IP sich der user registriert hat. Meine Frage nun: was bringt einem das? ich meine, die IP wechselt doch sowieso immer wenn man sich neu ins INET einloggt?! oder hab ich da was falsch verstanden?!

    hoffe ihr könnt mir die helfen

    cya CrazyPip

  • #2
    Hallo,

    da man nur HTTP_USER_AGENT zur Verfügung hat muß man mit
    reg. Ausdrücken das herausfischen was gesucht ist etwa so

    if(eregi("msie",$HTTP_USER_AGENT)){
    header(MSIEoptimierteSite.php)
    }

    Gruß
    Thomas
    Gruß
    Thomas

    Kommentar


    • #3
      hey danke es funktioniert

      PHP-Code:
      if(eregi("msie",$HTTP_USER_AGENT) AND eregi("5.5"$HTTP_USER_AGENT)) {
      echo 
      "Hier muss die site für Inet Explorer kommen"; }

      else {
      echo 
      "hier muss die Site für die anderen Browser kommen"; } 
      Wie binde ich das >= bei dem 5.5 ein? hat jemand eine Idee? ich komm net drauf...


      cya CrazyPip

      Kommentar


      • #4
        Vielleicht findest was: http://selfhtml.teamone.de/diverses/...tm#allgemeines

        Kommentar


        • #5
          danke für den link, aber aus der site werd ich net schlau


          PHP-Code:
          <?
          if(eregi("msie",$HTTP_USER_AGENT) AND eregi=("([5.5]{1,2})",$HTTP_USER_AGENT,$regs))AND if ($regs[1]="5.5") xor if ($regs[1]>"5.5")       
                          {
                          
                          echo "Hier muss die site für Inet Explorer kommen";
                          }

                          else {
                          echo "hier muss die Site für die anderen Browser kommen"; }                ?>

          hier habe ich probiert das "5.5" als Array auszugeben um so mit dem Wert weiterzuarbeiten. Nun meine Frage: Kann das überhaupt funktionieren? und wo ist der Fehler?

          cya CrazyPip

          Kommentar


          • #6
            hier mal ne uraltversion von mir
            PHP-Code:
                $user_agent getenv("HTTP_USER_AGENT");
                if ( (
            preg_match("/msie/i",$user_agent)) && (preg_match("/compatible/",$user_agent)) ) { //IE
                    
            $browser "ie";
                    if (
            preg_match("/5\.01/",$user_agent)) {
                        
            $version "5";
                    } elseif (
            preg_match("/5\.5/",$user_agent)) {
                        
            $version "5.5";
                    } elseif (
            preg_match("/6\.{1,2}/",$user_agent)) {
                        
            $version "6.0";
                    } else {
                        
            $version "ka";
                    }
                    
            //echo $version;
                
            } elseif (preg_match("/opera/i",$user_agent)) { //OPERA
                    
            $browser "opera";
                    if (
            preg_match("/5\.{1,2}/",$user_agent)) {
                        
            $version "5";
                    } elseif (
            preg_match("/6\.{1,2}/",$user_agent)) {
                        
            $version "6";
                    }
                } elseif (
            preg_match("/mozilla\/4\.7/i",$user_agent)) { //NS4
                    
            $browser "ns";
                    
            $version "4";
                } elseif ( (
            preg_match("/netscape/i",$user_agent)) && (preg_match("/(6|6\.){1,2}/",$user_agent)) ) { //NS6
                    
            $browser "ns";
                    
            $version "6";
                } 
            gruss

            Kommentar


            • #7
              super sowas habe ich gesucht!

              danke

              umständlich aber gut

              cya CrazyPip

              Kommentar


              • #8
                sag ich, uralt eben

                gruss

                Kommentar


                • #9
                  @Pip > besorg dir lieber ein skript, das ohne den ereg kram auskommt.

                  Kommentar


                  • #10
                    ja ich weiss, es ist ziemlich umständlich und ich denke das da auch eine gewisse unsicherheit dabei ist, aber ... was gibts für alternativen?! ich meine, wenn ich den Browser und die Version nicht ganz gezielt aus $HTTP_USER_AGENT herausbekomme bleibt mir eigentlich keine Wahl als mit "ereg" versuchen, das irgendwie hinzubekommen, oder?

                    Kommentar


                    • #11
                      Original geschrieben von CrazyPip
                      ja ich weiss, es ist ziemlich umständlich und ich denke das da auch eine gewisse unsicherheit dabei ist, aber ... was gibts für alternativen?! ich meine, wenn ich den Browser und die Version nicht ganz gezielt aus $HTTP_USER_AGENT herausbekomme bleibt mir eigentlich keine Wahl als mit "ereg" versuchen, das irgendwie hinzubekommen, oder?

                      ein skript mit substr() & Co. macht ereg() so ziemlich überflüssig.

                      solche skripte liegen massenhaft im web rum. hatte hier auch so eins auf der arbeit, kann´s aber nicht mehr finden. wenn ich was hab, paste ich´s dir hier rein.

                      Kommentar


                      • #12
                        ja aber mit substr() kann ich ja im Prinzip nur Anfang und Ende wegschneiden (mir also zurechtschneiden). Da aber bei jedem Browser eine andere Ausgabe erscheint, macht es das ziemlich schwierig.

                        Ja wäre cool wenn du das Skript hier reinposten würdest. Dann hätte ich wenigsten eine kleine Referenz für ein solches Skript.

                        Kommentar


                        • #13
                          wie gesagt mit substr() & CO (mit substr allein wäre das ein wenig schwierig )

                          sobald ich´s finde, paste ich´s hier rein ...

                          Kommentar


                          • #14
                            meinst du es so ungefähr?

                            PHP-Code:
                            <?PHP

                            if (substr_count($HTTP_USER_AGENT"MSIE") >= ) {
                            echo (
                            'hier kommt dann der Content für MSIE-optimiert');

                            } elseif (
                            substr_count($HTTP_USER_AGENT"Netscape") >= ) {
                            echo (
                            'und hier der für netscape');


                            ?>
                            aber so wirds dann halt auch schwer wegen den Versionen?!

                            Kommentar


                            • #15
                              egal wie Du es löst ein Problem bleibt dir: Opera.
                              hier kann man einfach auswählen als welcher Browser
                              er sich ausgibt...
                              Gruß
                              Thomas

                              Kommentar

                              Lädt...
                              X