Verwenden Sie array in PHP zu vergleichen Benutzername/Passwort

Ich habe Folgendes php-script, das hat man Benutzernamen und Kennwort an:

$Username = 'user1';
$Password = 'pass1';

/******************************************************************************/
if (isset($_POST['submitform'])){

    //Clean up the input values 
    foreach($_POST as $key => $value) {  
        $_POST[$key] = stripslashes($_POST[$key]); 
        $_POST[$key] = htmlspecialchars(strip_tags($_POST[$key])); 
    }
    $user = isset($_POST['user']) ? $_POST['user'] : '';
    $pass = isset($_POST['pass']) ? $_POST['pass'] : '';
    $report = $_POST['typereport'];

    if ($pass != $Password || $user != $Username) {
        showForm("Wrong Username/Password");
        exit();     
    }
} else {
    showForm();
    exit();
}

Ich würde gerne das Skript robuster, was bedeutet, dass ich hätte eine andere Benutzername/Passwort, damit mehrere Benutzer sich einloggen können (oder wollen es für tracking-Zwecke)

Also, wie ändere ich das script, so kann ich verwenden Sie die folgenden für $Username und $Password:

$Username=array("user1","user2","user3");
$Password=array("pass1","pass2","pass3");

Damit das Skript wird immer mit dem richtigen Benutzernamen und Kennwort, und mir erlauben wird, mehrere Benutzer?

  • Aus Neugier...warum bist du nicht mit einer Datenbank?
  • Mit Hilfe von PHP, weil ich es bereits habe, so versuchen, um es robuster zu. Arbeiten an der SQL-version, aber versuchen, zu entscheiden, zu gehen mit PDO und mysqli und versuchen, machen es zu sql-injection Beweis.
  • Sie wollen zu definieren, Benutzernamen und Passwörter in der Reihe, nicht in der Datenbank?
  • Ja nur wie ich mein Aktuelles script außer es wird erlaubt, mehrere Benutzernamen/Passwort.
  • Auch, Sie sind hashing der Passwörter, richtig? Das heißt, die Passwörter sollten nicht im Klartext.
  • ist es nicht eine große Sache noch, bewegen Sie Ihre Benutzer-Datenbank, wenn Sie wirklich wollen, um ihn stabil zu machen.
  • Recht gut im moment, es ist nicht hashed. Nur, gespeichert in einer php-Datei, die verglichen mit der Benutzer-Eintrag. Aber vielleicht auf der ganzen Linie ich werde implementieren Sie hashing?

InformationsquelleAutor Si8 | 2013-03-08
Schreibe einen Kommentar