kostenloser Webspace werbefrei: lima-city


Login klappt nicht!

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Hallo

    habe ein kleines problem weiß einer warum es nicht klappt?

    <?php
    session_start();
    ?>
    
    <?php
    $verbindung = mysql_connect("mysql.lima-city.de", "USER...." , "passwort")
    or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("db_1........_1") or die ("Datenbank konnte nicht ausgewählt werden");
    
    $username = $_POST["username"];
    $passwort = md5($_POST["password"]);
    
    $abfrage = "SELECT Benutzername, Passwort FROM login WHERE Benutzername  = '$username'";
    $ergebnis = mysql_query($abfrage);
    $row = mysql_fetch_object($ergebnis);
    
    if($row->Passwort == $passwort) 
        {
        $_SESSION["username"] = $username;
        header('Location: index.php?page=Login');
        }
    else
        {
        echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.html\">Login</a>";
        }
    
    ?>

    Fehler in der 20 Zeile! Also: header('Location: index.php?page=Login');


    Vielen Dank

    Philip :confused:

    Beitrag zuletzt geändert: 15.2.2010 18:13:51 von philip-felder
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Wie lautet die Fehlermeldung genau?

    Zufällig:
    Cannot modify header information - headers already sent


    Beitrag zuletzt geändert: 15.2.2010 18:18:50 von buechsdeluxe
  4. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Warning: Cannot modify header information - headers already sent by (output started at /home/webpages/lima-city/philip-felder/html/login.php:5) in /home/webpages/lima-city/philip-felder/html/login.php on line 20


    Beitrag zuletzt geändert: 15.2.2010 18:20:12 von philip-felder
  5. Ja. Du kannst nur Weiterleitungen per header verwenden wenn noch nirgends zuvor im Quellcode eine Ausgabe stattgefunden hat...ich nehme mal an dass du über dem PHP-Teil noch html-Code stehen hast oder?
  6. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Ja

    Ich möchte das so das den das echo in der seite drinsteht

    Beitrag zuletzt geändert: 15.2.2010 18:28:26 von philip-felder
  7. philip-felder schrieb:
    Ja

    Ich möchte das so das den das echo in der seite drinsteht


    Tja dann musst du wohl einen weg finden den header ganz am anfang zu setzen.
    Dieser AUSGABE muss immer vor jedem anderen ausgegebenen HTML-Code kommen (nich einmal leerzeilen dürfen kommen)

    header('Location: index.php?page=Login');


    siehe dazu hier

    Beachten Sie, dass Sie die Funktion header() aufrufen müssen, bevor Sie irgendeine andere Art von Ausgabe (seien es normale HTML-Tags, Leerzeilen in einer Datei oder von PHP) zum Client schicken.


    Also am besten irgendwie so:
    (....)
    
    if($row->Passwort == $passwort) 
        {
        $_SESSION["username"] = $username;
        header('Location: index.php?page=Login');
       $login = true;
        }
    else
        {
        $login=false
        }
    ?>
    DANN DER HTML CODE
    
    UND DANN EINFACH:
    <?
    if ($login == false){
    echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.html\">Login</a>";
    }
    ?>
    
    Code ungetestet...




    Beitrag zuletzt geändert: 15.2.2010 18:48:43 von simuliertes
  8. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Leider


    Parse error: syntax error, unexpected '}' in /home/webpages/lima-city/philip-felder/html/login.php on line 19
  9. philip-felder schrieb:
    Leider


    Parse error: syntax error, unexpected '}' in /home/webpages/lima-city/philip-felder/html/login.php on line 19


    Bitte bei Fehlermeldungen immer betreffende Codezeile (in diesem Fall 19) und ein Stück vorher bis ein Stück nacher posten.
  10. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Am besten nochmal der ganze (reine php) code:

    <?php
    session_start();
    ?>
    
    <?php
    $verbindung = mysql_connect("mysql.lima-city.de", "USER1....." , ".........")
    or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("db_1....._1") or die ("Datenbank konnte nicht ausgewählt werden");
    
    if($row->Passwort == $passwort) 
        {
        $_SESSION["username"] = $username;
        header('Location: index.php?page=Login');
       $login = true;
        }
    else
        {
        $login=false
    	}
    ?>
    
    <?php
    if ($login == false){
    echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.html\">Login</a>";
    }
    ?>


    Zeile 19:
    else
        {
        $login=false
    	}
  11. Semikolon vergessen, muss heissen:
    else
        {
        $login=false;
    	}
  12. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Aber immer noch:


    Warning: Cannot modify header information - headers already sent by (output started at /home/webpages/lima-city/philip-felder/html/login.php:5) in /home/webpages/lima-city/philip-felder/html/login.php on line 13
  13. Rein logisch müsste die Reihenfolge hier schon mal umgekehrt sein, denn nach der Weiterleitung wird der Code nicht mehr ausgeführt.

    Aus
    header('Location: index.php?page=Login');
    $login = true;


    mach
    $login = true;
    header('Location: index.php?page=Login');


    Aber das wird das Problem vermutlich nicht beheben!
  14. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Leider nicht

    Warning: Cannot modify header information - headers already sent by (output started at /home/webpages/lima-city/philip-felder/html/login.php:5) in /home/webpages/lima-city/philip-felder/html/login.php on line 14
  15. Versuchs mal damit. Bitte KOPIEREN und nur DB-Anbindung korrigieren!

    <?php
    session_start();
    $verbindung = mysql_connect("mysql.lima-city.de", "USER1....." , ".........")or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("db_1....._1") or die ("Datenbank konnte nicht ausgewählt werden");
    if($row->Passwort == $passwort) 
        {
        $_SESSION["username"] = $username;
        header('Location: index.php?page=Login');
       $login = true;
        }
    else
        {
        $login=false;
         }
    if ($login == false){
    echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.html\">Login</a>";
    }
    ?>
  16. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Klappt aber ich kann mich auch mit falschem passwort anmelden


    <?php
    session_start();
    $verbindung = mysql_connect("mysql.lima-city.de", "USER......" , "...........")or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("db_1......_1") or die ("Datenbank konnte nicht ausgewählt werden");
    if($row->Passwort == $passwort) 
        {
        $_SESSION["username"] = $username;
        header('Location: index.php?page=Login');
       $login = true;
        }
    else
        {
        $login=false;
         }
    if ($login == false){
    header('Location: index.php?page=Pass');
    }
    ?>
  17. <?php
    session_start();
    $verbindung = mysql_connect("mysql.lima-city.de", "USER......" , "...........")or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("db_1......_1") or die ("Datenbank konnte nicht ausgewählt werden");
    $username = $_POST["username"];
    $passwort = md5($_POST["password"]);
    $abfrage = "SELECT Benutzername, Passwort FROM login WHERE Benutzername  = '$username'";
    $ergebnis = mysql_query($abfrage);
    $row = mysql_fetch_object($ergebnis);
    if($row->Passwort == $passwort) 
        {
        $_SESSION["username"] = $username;
        header('Location: index.php?page=Login');
       $login = true;
        }
    else
        {
        $login=false;
         }
    if ($login == false){
    header('Location: index.php?page=Pass');
    }
    ?>
  18. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Danke :smile:

    hat geklappt

    LG Philip
    :wave:
  19. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!