kostenloser Webspace werbefrei: lima-city


MySQL login klappt nicht ?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. So jetzt hab ich den Fehler aber ;)

    Und zwar: ändere deine Tabelle:

    id int(10) UNSIGNED auto_increment
    Vorname varchar(150) latin1_swedish_ci
    Nachname varchar(150) latin1_swedish_ci
    EMail varchar(150) latin1_swedish_ci <-- "-" entfernt (WICHTIG!)
    Benutzername varchar(150) latin1_swedish_ci <-- "z" eingefügt
    Passwort varchar(32) latin1_swedish_ci

    und dann folgenden Code:

    <?php
    $verbindung = mysql_connect("mysql.lima-city.de", "USER....." , "Passwort")
    or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    
    mysql_select_db("db_....._1") or die ("Datenbank konnte nicht ausgewählt werden");
    
    $username = $_POST["username"];
    $passwort = $_POST["passwort"];
    $vorname = $_POST["vorname"];
    $nachname = $_POST["nachname"];
    $email = $_POST["email"];
    
    
    if($passwort != $passwort2 OR $username == "" OR $passwort == "")
        {
        echo "Eingabefehler. Bitte alle Felder korekt ausfüllen. <a href=\"eintragen.html\">Zurück</a>";
        exit;
        }
    $passwort = md5($passwort);
    
    $result = mysql_query("SELECT id FROM login WHERE username = '$username'");
    $menge = mysql_num_rows($result);
    
    if($menge == 0)
        {
        $eintrag = "INSERT INTO login (id, Vorname, Nachname, EMail, Benutzername, Passwort) VALUES ('', '$vorname', '$nachname', '$email', '$username', '$passwort' )";
        $eintragen = mysql_query($eintrag);
    
        if($eintragen == true)
            {
            echo "Benutzername <b>$username</b> wurde erstellt. <a href=\"login.html\">Login</a>";
            }
        else
            {
            echo "Fehler beim Speichern des Benutzernames. <a href=\"eintragen.html\">Zurück</a>";
            }
        }
    
    else
        {
        echo "Benutzername schon vorhanden. <a href=\"eintragen.html\">Zurück</a>";
        }
    	
    ?>


    Das Problem war der Bindestrich beim Spaltenname E-Mail, deswegen hab ich ihn in EMail umbenannt...

    Beitrag zuletzt geändert: 10.2.2010 20:39:43 von buechsdeluxe
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    :frown:


    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/webpages/lima-city/philip-felder/html/Test/Neuer Ordner/eintragen.php on line 24
    Fehler beim Speichern des Benutzernames. Zurück
  4. $result = mysql_query("SELECT id FROM login WHERE username = '$username'");


    Muss natürlich

    $result = mysql_query("SELECT id FROM login WHERE Benutzername  = '$username'");


    heißen.

    Du bekommst ja eine Fehlermeldung, also versuche doch einfach mal anhand dieser den Fehler zu finden...
  5. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

  6. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/webpages/lima-city/philip-felder/html/Test/Neuer Ordner/eintragen.php on line 23

    Und diese Fehlermeldung sagt uns, dass die Quelle auf die sich mysql_num_rows bezieht, also in diesem Fall: $result Fehlerhaft ist.
    D.h. da liegt der Fehler, überprüfe also wirklich nochmals deine Tabelle und deinen Code...
  7. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Es Klappt
    es lag an der MySQL tabell;->
    Kann ich auch den letzen login i-wie herrausfinden also vom user
    Vielen Dank
    Philip

    Beitrag zuletzt geändert: 10.2.2010 21:15:05 von philip-felder
  8. ;) Wo genau war der Fehler?
  9. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Hab Benutername geschriben :sleep:
  10. ...das hab ich dir aber mehrmals gesagt gehabt :singer:
  11. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    *hihi*

    Geht das denn das man sich auch den letzten login des user ansehen kann ?
    Und das passwort zu ändern, oder auch eine bestätigungs-email?

    Nochmals Danke (wenn ich könnte würde ich dir ein Karma geben, habe aber selbst noch keins.)
  12. Wie meinst du das mit dem letzten Login des Users ansehen? Meinst du die Uhrzeit?

    Natürlich kann man auch eine Bestätigungsmail verschicken und das Passwort ändern...

  13. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Ich meine das das Konto erst klappt wenn man ein bestätigungslink anklick
    Und ich das Datum des User sehe wan er es letzte mal drin war, ist das möglich?
  14. Ja natürlich ist beides möglich, aber das hier zu beschreiben ist echt bisschen viel. Also mach doch einfach mal ein Tutorial, such ein bisschen bei Google und vorallem: überleg dir selbst ein paar Ansätze. Wenn du dann immernoch Fragen hast dann schreib hier.

    Zum sehen wann der User das letzte mal online war: du musst einfach die Zeit mit in die Datenbank speichern.

    Und zum Aktivierungslink: einfach eine Spalte: aktiviert einfügen, die erst true(z.b. 1) wird wenn der User einen bestimmen Link gedrückt hat. Dazu einfach rausfinden wie man E-Mails verschickt ;)
  15. Autor dieses Themas

    philip-felder

    philip-felder hat kostenlosen Webspace.

    Anderes Thema wieso klappt das denn nicht (ist das login)

    <?php
    session_start();
    ?>
    
    <?php
    $verbindung = mysql_connect("mysql.lima-city.de", "USER....." , "......")
    or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("db_1......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' LIMIT 1";
    $ergebnis = mysql_query($abfrage);
    $row = mysql_fetch_object($ergebnis);
    
    if($row->passwort == $passwort)
        {
        $_SESSION["username"] = $username;
        echo "Login erfolgreich. <br> <a href=\"geheim.php\">Geschützer Bereich</a>";
        }
    else
        {
        echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.html\">Login</a>";
        }
    
    ?>


    immer steht da Benutzername und/oder Passwort waren falsch. Login


    Beitrag zuletzt geändert: 10.2.2010 21:54:12 von philip-felder
  16. Also was wissen wir wenn da steht: "Benutzername und/oder Passwort waren falsch. Login" ?

    Richtig! Die Bedingung von
    if($row->passwort == $passwort)
        {
        $_SESSION["username"] = $username;
        echo "Login erfolgreich. <br> <a href=\"geheim.php\">Geschützer Bereich</a>";
        }


    Ist nicht erfüllt. Also sollten wir uns überlegen wieso nicht. Also lass ich mir mal alle Variablen anzeigen, und teste so den Code Schrittweise bis ich den Fehler gefunden habe...Und ein praktischer Nebeneffekt wenn man das ganze selbst macht ist, dass man dabei mehr lernt wie wenn jmd einem den richtigen Code postet. Deshalb versuch es mal selbst und zeig wenigstens ein bisschen Eigeninitative...

    Wenn du konkrete Fragen hast, oder an einer Stelle nicht weiterkommst dann frag hier wieder...

    Beitrag zuletzt geändert: 10.2.2010 21:57:43 von buechsdeluxe
  17. 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!