passwortabfrage für mehrere user

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • passwortabfrage für mehrere user

    Hallo, hat jemand eine idee wie ich diese Script so umschreiben kann damit ich nicht nur ein PW habe, sondern mehreren Usern ein Passwort zuweisen kann?
    Das ist ein schon bestehendes Script und ich soll es ändern, bin aber noch nich so besonders fit in php.

    Gruß und thx
    roman


    <?php
    // Überprüfung der Zugangsberechtigung
    $headers = getallheaders();
    $auth=$headers[authorization];
    if ($auth=='')
    $auth=$headers[Authorization];
    $userAr= explode(":", base64_decode(substr($auth,6)));
    if ($userAr[0]!=LOGIN_USER || $userAr[1]!=LOGIN_PWD){
    Header("WWW-Authenticate: Basic realm=\"Login\"");
    Header("HTTP/1.0 401 Unauthorized");
    $content=$tool->file2var('../html/loginerror.html');
    }
    ?>



    <?php
    // Zugang zum Loginbereich
    DEFINE(LOGIN_USER, 'gast'); // Benutzername
    DEFINE(LOGIN_PWD, 'passwort'); // Passwort
    ?>

  • #2
    Gibt mehrere Möglichkeiten, entweder du deklaierst dir einen Array mit den Benutzern und den Passwörtern, oder du speicherst es irgendwo ab, z. B. Textdatei, oder Datenbank.
    Ich bevorzuge das letztere, aber ich glaube dir reicht Lösung 1.

    PHP Code:
    <?php
    // Benutzerdaten
    $daten[0]["user"] = "Benutzer1";
    $daten[0]["pass"] = "Pass1";
    $daten[1]["user"] = "Benutzer2";
    $daten[1]["pass"] = "Pass2";

    function 
    Check($user$pass) {
      global 
    $daten;
      for (
    $i=0$i<=count($daten)-1$i++) {
        if ((
    $daten[$i]["user"] == $user) and ($daten[$i]["pass"] == $pass)) {
          return 
    true;
        }
      }
      return 
    false;
    }

    // Überprüfung der Zugangsberechtigung
    $headers getallheaders();
    $auth=$headers[authorization];
    if (
    $auth==''$auth=$headers[Authorization]; 
    $userArexplode(":"base64_decode(substr($auth,6)));
    if (!
    Check($userAr[0], $userAr[1])){
      
    Header("WWW-Authenticate: Basic realm=\"Login\"");
      
    Header("HTTP/1.0 401 Unauthorized");
      
    $content=$tool->file2var('../html/loginerror.html');
    }
    ?>

    Kann sein, dass Syntaxfeler drin sind, aber so sollte es irgendwie gehn
    Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

    Comment


    • #3
      :-)))

      Dank dir 1000x
      Das isses :-) *freu*

      Gruß
      Roman *demeinsteinvomherzenfällt*

      Comment


      • #4
        Noch ne Frage: wieviele passwörter

        Wieviele Passwörter kann man wohl vergeben ohne dass das Script abstürzt?
        Oder ist das nich so kritisch?

        Comment


        • #5
          Abstürzen kann das Skript eigentlich nicht.
          Das einzigste was dir passieren kann ist, dass du das Memory Limit von deinem Skript erreicht hast. Standardmäßig ist dies auf 8MB begrenzt.
          Aber das sollte für mehrere zich tausend Passwörter und Benutzer reichen.
          Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

          Comment

          Working...
          X