PHP MySQL

  • //edit andere MySQL Aufbau verwendet


    Ich bekomme derzeit folgenden Fehler


    [b]Warning[/b]: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in [b]/users/train/www/login.php[/b] on line [b]15[/b]


    Code:



    <?php
    session_start();
    ?>



    <?php
    $verbindung = mysql_connect("localhost", "train" , "")
    or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
    mysql_select_db("trai") or die ("Datenbank konnte nicht ausgewählt werden");



    $username = $_POST["username"];
    $passwort = $_POST["password"];



    $abfrage = "SELECT Name, Passwort FROM benutzerkonten WHERE username LIKE '$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>";
    }



    ?>


    Ich habe eine tabelle namens "benutzerkonten" in dieser sind die Spalten "Passwort", "Name" . Diese möchte ich abfragen in klartext. Allerdings klappt das ganze scheinbar aufgrund des Fehlers nicht. Bitte um eure Hilfe

    2 Mal editiert, zuletzt von robbi2304 ()

  • Habe mal deinen Query verbessert & die Passwortabfrage verbessert ^^
    Wenn du beim HTML Formular die Daten $email & $passwort übergibst machst du das ja auch via Post und nicht mit Get,
    also musst du auch die erste Abfrage bei isset mit $_POST abfragen.
    Würde sonst keinen Sinn ergeben wenn du die Daten per Post übermittelst aber mit Get abfängst ^^

    Hoffe konnte dir helfen :)

  • Klar



    <html>
    <head>
    <title>Test Login v1.0</title>
    </head>
    <body>



    <form action="login.php" method="post">
    Dein Username:<br>
    <input type="text" size="24" maxlength="50"
    name="username"><br><br>



    Dein Passwort:<br>
    <input type="password" size="24" maxlength="50"
    name="password"><br>



    <input type="submit" value="Login">
    </form>



    </body>
    </html>


    Habe gerade aus der PHP Datei folgendes geändert


    $email = $_POST['email'];
    zu
    $email = $_POST['username'];