user login

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

  • user login

    Hallo,
    ich habe ein login script geschrieben. Die eingegebenen daten werden mit einer mysql datenbank verglichen. Wenn ich das script ausführe kommen die eingabefelder, doch nach der eingabe wird, glaube ich nicht verglichen ob das pasw richtig war, hier der quellcode:



    PHP-Code:
    <?php
     $conn 
    mysql_connect("localhost","root","");
    $db=mysql_select_db("st_quirin",$conn);
     
    $sql"SELECT user.id, user.name, user.pass FROM user";
    $rs mysql_query($sql,$conn);
                    
            while (
    $zeile=mysql_fetch_array($rs,MYSQL_ASSOC))
        {
        if(
    $PHP_AUTH_USER==$zeile["name"] & $PHP_AUTH_PW==$zeile["pass"])
                    {
                    echo 
    "login erfolgreich";
                    break;
                               }
                    else
                    {
                             
    $ui false;
                    }
                }
    if (
    $ui ==false){    Header('HTTP/1.1 401 Unauthoized');
            
    Header('WWW-Authenticate: Basic realm="interner-bereich"');}
                
     
    ?>
    weiß jemand wo der fehler liegt???
    mfg ralf

  • #2
    du brauchst das rad nicht neu zu erfinden. schau erst mal, wie es richtig geht:
    http://tut.php-q.net/login.html

    Kommentar


    • #3
      Du benutzt einen Bitoperatoren anstelle eines logischen Operators zur Prüfung. Also statt & müsste in der if Abfrage ein && stehen.

      Allerdings würde ich dir Vorschlagen, die Gleichheit in der SQL Abfrage zu prüfen (Also " SELECT * FROM ... WHERE name='...' AND pass='...' ") und dann auf die Anzahl der gefundenen Datensätze prüfen.

      Kommentar

      Lädt...
      X