PHP Passwortabfrage funktioniert nicht

  • Hallo,


    wer es vielleicht mitbekommen hat, weiß, dass ich gerade ein bisschen rumversuche, und daher nun schon meinen 8. Thread hier eröffne :D
    Also:


    Ich logge mich mit den korrekten Benutzerdaten ein, doch bekomme "Falsches Passwort!" zurück.
    Woran liegt das?


    Keine Warnings o.ä.


    lg

  • Wie sieht es mit debuggen aus? Bist du dir sicher, dass das Passwort plain, sprich unverschlüsselt oder gehasht, in der Datenbank steht?

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • PHP
    $result = mysql_query("SELECT Name, Passwort FROM Users_AL WHERE Name = '".$username."' AND Passwort = '".$passwort."' LIMIT 1");
    if (!mysql_num_rows($result)) return 0; // Falscher Login
    else return 1; // Korrekter Login


    Machs dir nicht so kompliziert und lass die Datenbank für dich arbeiten ^^


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • PHP
    $result = mysql_query("SELECT Name, Passwort FROM Users_AL WHERE Name = '".$username."' AND Passwort = '".$passwort."' LIMIT 1");
    if (!mysql_num_rows($result)) return 0; // Falscher Login
    else return 1; // Korrekter Login


    Machs dir nicht so kompliziert und lass die Datenbank für dich arbeiten ^^


    :whistling::whistling::whistling::whistling:


    Und nu? :o

  • Solltest du dringend deine SQL Grundlagen überarbeiten :D


    Ich tipps jetzt mal nur hier im Editor, sollte für dich aber als Anreiz reichen:



    Kann sein, dass du Name escapen musst, bin mir net sicher ob das ne SQL Syntax ist.


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Dann lässt du im WHERE Part halt den Leader raus und fragst den nachträglich über n if-clause ab. Trotzdem braucht man dafür keine 150 Queries machen :p


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • (Users_LOG.Name = '".$username."' AND Users_LOG.Leader = 1 AND Users_LOG.Passwort = '".$passwort."' LIMIT 1";


    Du hast nen Klammerfehler
    so sollte es sein :D

    All in all it's just another brick in the wall

  • Ich finde es beeindruckend dass du seit gestern mit PHP erst arbeitest und dich heute schon an PHP mit MySQL ran traust.


    Du kannst gerne mich bei Fragen kontaktieren, sofern ich helfen kann werde ich helfen :)


    Liebe Grüße
    palwal


    PS: Sollten vermeindlich unerklärische MySQL/PHP Fehler auftreten dann schau mal mit var_dump($sqlsytntaxt). Das zeigt wie dieser Script quasi arbeitet.

    Wer PALWAL-Sternchen vergibt, bekommt aus Prinzip ein Like 😏


    @palwal Donald Trump ist einer der besten Präsidenten welche die USA je hatte, meine Meinung.

  • Ich denke mal du hast Spalte Leader...jetzt kommt es finde ich auf die Struktur an ... also z.B 0 (Als false) oder auf Deutsch.....ich würde dir da immer intger 0 oder 1 wie true empfehlen...


    Die Abfrage ist wie die Passwortabfrage

    PHP
    $fetch = mysql_fetch_object($sql);
    if($fetch->Leader==on)
    {
    //Irgendwas passiert
    }


    Wenn du on/off 0 oder 1 verwendest kannst es so machen da es schon bool (Also Wahr oder Falsch) Abfrage ist...wenn du es anders Abfragen möchtest, also z.B du machst es ins Deutsche wo in Leader z.B Ja oder Nein steht dann musst du 2 " machen bei der Abfrage.
    Also so:

    PHP
    if($fetch->Leader=="Ja")
    {
    //Irgendwas passiert
    }


    If-Anweisungen geben ja immer nur Bool aus ;)


    Liebe Grüße
    palwal

    Wer PALWAL-Sternchen vergibt, bekommt aus Prinzip ein Like 😏


    @palwal Donald Trump ist einer der besten Präsidenten welche die USA je hatte, meine Meinung.

  • PHP
    $row = mysql_fetch_assoc($result);
    if ($row['Users_LOG.Leader'] == "wert") // ist LOG Leader
    elseif ($row['Users_RGN.Leader'] == "wert") // ist RGN Leader
    // nach belieben erweitern und mit
    else // ist kein Leader aufhören


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'