Ankündigung

Einklappen
Keine Ankündigung bisher.

(mysql) select funktioniert nicht ?

Einklappen

Neue Werbung 2019

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

  • (mysql) select funktioniert nicht ?

    Hey!
    Ich habe eine Datenbank erstellt, die eine Tabelle user hat in der mail,password und das letzte einloggdatum gespeichert werden.
    Wenn sich nun jemand bei mir einloggt, will ich die Daten aus dem Formular mit meiner Datenbank vergleichen,also will ich an das (verschlüsselte )passwort in der datenbank, das zu der angegeben email aus dem Formular gehört:
    Mein Ergebnis: Ich habe Testdaten, die in der Datenbank sind, in das Formular eingegeben, aber das password dazu aus der DB ist laut "echo" leer...
    ich komme nicht richtig an das passwort, also ist meine vermutung, dass select nicht funktioniert??
    Echo von $result liefert "Resource id #5". Sagt mir das was?
    PHP-Code:
            $mail $_POST[mail];
            
    $sql "SELECT
                        password
                    FROM
                        user
                    WHERE
                        mail='
    $mail'";
            
            
    // Retrieve all the data from the "example" table
            
    $result mysql_query($sql) or die(mysql_error());
            echo 
    "result: ".$result." ";
            
    // store password
            
    $rowmysql_fetch_assoc($result);
            
    $password=$row;

            echo 
    '*password:'.$password.'* <br>'
    Mir fällt echt nichts gescheites ein, wieso sollte das nicht klappen?

  • #2
    PHP: mysql_fetch_assoc - Manual

    mysql_fetch_assoc liefert ein assoziatives Array welches als Schlüssel die Namen der Spalten enthält.

    D.h. $row ist ein Array und kein String wie du vermutest. Ergo ist $password auch ein Array, ergo gibt echo nichts aus.

    Für Debugausgaben empfehle ich übrigens var_dump();. Das zeigt dir auch Arrays und ihren Aufbau an.
    "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

    Kommentar


    • #3
      Och nö.
      Ja, hatte nen Denkfehler. Hatte es auch schon mit $row[0] probiert, aber habe nicht daran gedacht, dass php ja keine durchnummerierten arrays haben muss, sondern auch worte gehen...
      Danke

      Kommentar


      • #4
        Zitat von Rea Beitrag anzeigen
        Och nö.
        Ja, hatte nen Denkfehler. Hatte es auch schon mit $row[0] probiert, aber habe nicht daran gedacht, dass php ja keine durchnummerierten arrays haben muss, sondern auch worte gehen...
        Danke
        Wenn du mysql_fetch_row verwenden würdest wäre $row[0] korrekt gewesen.

        Alternativ liefert dir mysql_fetch_array ein Array sowohl mit numerischem Index als auch mit assoziativem oder dem, was du als Parameter übergeben hast (siehe ggf. im Handbuch).
        "Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".

        Kommentar

        Lädt...
        X