@ PHP Fachleute

Dieses Thema im Forum "Software" wurde erstellt von SC50, 14. Juli 2005.

  1. SC50

    SC50 New Member

    Warum funktioniert diese Abfrage:

    if((!isset($PHP_AUTH_USER)) || (($PHP_AUTH_USER!=$user_name) || ($PHP_AUTH_PW!=$user_password)))
    {
    Header("WWW-Authenticate: Basic realm=\"My Realm\"");
    Header("HTTP/1.0 401 Unauthorized");
    echo "Nicht authorisiert!\n";
    exit;
    }

    unter PHP Ver. 4.3.9 nicht mehr.
    Es wird einfach ignoriert.
    :confused:
     
  2. hofmeyer

    hofmeyer New Member

    Im If Statement müssen die Vergleichsoperatoren für Gleichheit == sein und nicht =, oder?
     
  3. SC50

    SC50 New Member

    "!=" für ungleich

    Wobei ich jetzt schon etwas weiter gekommen bin.
    Die Passwort Abfrage erfolgt, aber die Variablen "$PHP_AUTH_USER" und "$PHP_AUTH_PW" werden nicht gefüllt. Damit kann die Vergleichsabfrage natürlich nie erfolgreich sein.
    :confused: :confused:
     
  4. hofmeyer

    hofmeyer New Member

    Argh, ich hatte glatt das Ausrufezeichen übersehen, hier in der Bude ist es definitiv zu heiß...
     
  5. Laques2000

    Laques2000 New Member

    Der Code ist völlig korrekt. Wenn die Variable nicht gefüllt werden, dann ist das eine andere Sache.
     
  6. Pahe

    Pahe New Member

    Könnte es sein, dass eine Standardisierung von Systemvariablen stattgefunden hat und die Variablen einen führenden Unterstrich bekommen haben?

    z.B. von $PHP_AUTH_USER -> $_PHP_AUTH_USER

    und dann das so aussehen müßte:

    if((!isset($_PHP_AUTH_USER)) || (($_PHP_AUTH_USER!=$user_name) || ($_PHP_AUTH_PW!=$user_password)))
    {
    Header("WWW-Authenticate: Basic realm=\"My Realm\"");
    Header("HTTP/1.0 401 Unauthorized");
    echo "Nicht authorisiert!\n";
    exit;
    }
     
  7. SC50

    SC50 New Member

    ta taaa
    hier kommt anscheinend die Lösung :frown:

    Der Sun ONE Webserver unterstützt PHP_Auth nicht.
    Da kann ich anscheinend konfigurieren was ich will, so wird das nix.
    :cry:
    Sollte jemand eine Idee haben, wie man sich an diesem Problem vorbei zaubern kann, ich bin für jeden Vorschlag dankbar.
     
  8. MacKlausi

    MacKlausi New Member

    Eine Möglichkeit wäre, mit Sesseions zu arbeiten.
    Ich weiß jetzt aber nicht, ob die von SUN... unterstützt werden.
     
  9. plochi

    plochi New Member

    Hallo !

    Mit welcher Version hattest Du denn "vorher" gearbeitet ?
    Versuche unter Umständen einmal mittels
    $_SERVER["PHP_AUTH_USER"] und
    $_SERVER["PHP_AUTH_PW"]
    an den Inhalt der Variablen heranzukommen.
    Ich hatte (vor längerer Zeit) den Effekt beim Wechsel von 3x. auf 4.x
     
  10. schnabbel

    schnabbel New Member

    Jupp. Seit PHP 4.2 wurde in der php.ini register_globals abgeschaltet.

    http://de.php.net/register_globals

    Grüße
    Patrick
     

Diese Seite empfehlen