Betriebssystem erkennen mit PHP

  • PHP

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Betriebssystem erkennen mit PHP

    HI !

    Weiß jemand wie man ein Betriebssystem erkennen kann mit PHP??
    Das des Servers auf dem die PHP dateien liegen !
    Weiß nicht mal ob das geht !

    Greets
    Newbie
  • Holger schrieb:

    da wäre die lösung cleverer

    PHP-Quellcode

    1. <?php
    2. phpinfo();
    3. ?>


    mfg


    Da er nur das Betriebssystem wissen möchte, dachte ich, wäre die Ausgabe (Bsp.:

    Quellcode

    1. Apache/2.0.53 (Win32) mod_ssl/2.0.53 OpenSSL/0.9.7e PHP/5.0.3
    )besser
    Ist halt nur die Apacheinfo, die er ja wollte^^"

    P.S.
    wenn du wirklich NUR das betriebssystem haben willst, musste halt mit dem String arbeiten und die Klammern suchen;)
  • Naja die 2. Lösung spuckt ne MENGE aus und die erste auch eigentlich zuviel....
    1. Vorschlagg spuckt das aus:
    Apache/2.0.52 (Win32) mod_ssl/2.0.52 OpenSSL/0.9.7d PHP/5.0.2
    2. Naja wisst ihr ja selbst....was phpinfo() tut....
    Aber wie krieg ich nun mein system raus...
    Muss nämlich dann inner if abfrage schreiben
    "if(system == windoof) dann mach das" else "mach dies"
    ....

    ///

    ERGÄNZUNG: Aber stehen die Klammern wirklich immer dort, kann ich davon ausgehen dass dort immer das System steht zwischen den Klammern ????
  • hier bitte ;)
    wie gesagt Stringfunktionen ;)

    PHP-Quellcode

    1. <?php
    2. $info = getenv("SERVER_SOFTWARE");
    3. echo substr($info,strpos($info,"(")+1,strpos($info,")")-(strpos($info,"(")+1));
    4. ?>
  • Thx !
    Problem ist glaube ich jetzt nur das öffentliche server (wie funpic) es nicht erlauben die infos runterzuziehen oder ?? Weil ich es aufm funpic getestet habe, aber da kommt nix an antworten...also keine ausgabe ....
  • Komiche Leute ^^"
    dann such dir eine neue freespaceanbieter ;)

    Bei sprintweb.de kannste (wenn du schüler/student bist) für einmalige 5€ 30mb und vieles mehr haben ->KEINE WERBUNG ODER SONE SCHE*ßE<- und der service wird da ganz groß geschrieben ;)
  • JA bin wohl noch ein kleiner Schüler *gg*
    Der funpic läuft ja auch ohne werbung etc....glaube ich werde mal ne email zu den schicken uhjd fragen was da los ist und warum das net geht !
    Also Big Thx !

    Greets
    $Newbie$
  • funpic zeigt in keiner var das OS an! hier hilft nur phpinfo()!
    wenn du nur zw. 2 servern unterscheiden willst, also z.b zwischen deinem home www-server und dem funpic-server, dann mach's ueber die IP addresse $_SERVER['SERVER_ADDR']!!

    so lade ich z.b. unterschiedliche configs fuer die mysql authentifizierung!!

    ceeyaa.MeX
  • Hmm...funpic war nun nen Beispiel ob es mit der oben genannten Methode funktioniert, aber hat sich dann wohl erledigt :) Tut es nämlich net ! Schade....
    Naja werde mir was einfallen lassen !
    Danke @ all & der thread kann geclosed werden !

    Greets
    *$Newbie$*
  • $Newbie$ schrieb:

    Hmm...funpic war nun nen Beispiel ob es mit der oben genannten Methode funktioniert, aber hat sich dann wohl erledigt :) Tut es nämlich net ! Schade....
    Naja werde mir was einfallen lassen !
    Danke @ all & der thread kann geclosed werden !

    Greets
    *$Newbie$*

    :eek: Wie jetzt bei mir läuft es einwandfrei!!! (auf Win-Server und Linux)
    ich bau mal eine Hei, der Server gibt die Variabel "getenv("SERVER_SOFTWARE") nicht aus-Funktion ein ;)

    PHP-Quellcode

    1. <?php
    2. $info = getenv("SERVER_SOFTWARE");
    3. if(!isset($info)) echo "Hei, der Server gibt die Variabel \"getenv(\"SERVER_SOFTWARE\")\" nicht aus!!!";
    4. else echo substr($info,strpos($info,"(")+1,strpos($info,")")-(strpos($info,"(")+1));
    5. ?>
  • funpic gibt bei $_SERVER['SERVER_SOFTWARE'] den wert Apache aus! damit kann man dieses prob nicht loesen!
    ein workaround waere es ueber pfade herauszufinden! mach mal ein echo $_SERVER['DOCUMENT_ROOT'];! als wert bekommst du: /usr/export/www/vhosts/funnetwork/hosting/DEIN_NICK
    wie du siehst muss es sich hier um ein unix-sys handeln!
    wie gesagt, is nur ein workaround! :'-(

    ~ C L O S E D ~

    ceeyaa.MeX