MySQL-Passwort auslesen

  • Hallo Leute ich möchte gerne folgendes machen:
    In eine Tabelle werden u.a. user_name und user_passw gespeichert. Nun möchte ich über ein Formular überprüfen, ob das richtige Passwort angegeben wurde:

    PHP
    $passw_SQL='SELECT user_passw FROM tbl_user WHERE user_name="' . $user . '"';
    	$passw_result=mysql_query($passw_SQL);
    	if ($passw == "$passw_result") {
    	echo "Stimmt";
    	}
    	else {
    	   echo "
    Leider war Dein Passwort falsch, bitte versuche es erneut.
    ";
    	}


    Leider funktioniert das bei mir nicht Wieso???
    DANKE DANKE DANKE :D :D

  • Hallo Now!

    Also ich würd's so machen:


    MfG

    [C]arp[h]unter

    Wer ist dieser LAN und warum macht er so viele Parties?
    Internet, gibt's den Scheiß immer noch?
    Warum passieren mir nur Sachen, die sonst nur dummen Leuten passieren? :: NEIN!

  • Du musst nämlich die Funktion row[''] (als Array) verwenden :)

    Dann erst kannst du was aus der Datenbank auslesen, das speziell in DIESEM Datensatz steht :)

    MfG

    [C]arp[h]unter

    Wer ist dieser LAN und warum macht er so viele Parties?
    Internet, gibt's den Scheiß immer noch?
    Warum passieren mir nur Sachen, die sonst nur dummen Leuten passieren? :: NEIN!

  • achso okay Vielen Dank, schade dass es doch nicht so einfach ist, wie ich es dachte :)

  • naja, das ist halt das ganze Script :)

    Sind halt noch alle Funktionen mit drin, die so halbwegs für Sicherheit sorgen.

    Wenn du noch irgendwas nicht verstehst, kannst du gerne fragen :)

    MfG

    [C]arp[h]unter :)

    Wer ist dieser LAN und warum macht er so viele Parties?
    Internet, gibt's den Scheiß immer noch?
    Warum passieren mir nur Sachen, die sonst nur dummen Leuten passieren? :: NEIN!

  • Achso: Du musst die Variablen ($_POST, $_GET) noch anpassen, sonst funktioniert es nicht :)

    Was du ja bestimmt selbst weißt :)

    Wenn du willst, kannst du auch über Skype (mffxxray) schreiben :)

    :) :) :)

    MfG

    [C]arp[h]unter

    Wer ist dieser LAN und warum macht er so viele Parties?
    Internet, gibt's den Scheiß immer noch?
    Warum passieren mir nur Sachen, die sonst nur dummen Leuten passieren? :: NEIN!

  • achso doch: Die Mysql verbindung am anfang mit diesem error-zeuch hat doch nichts mit dem eigentlichen script zutun oder?

  • Hallo, ich wieder :)

    Meinst du "error_reporting(E_ALL)"?

    Du brauchst die MySQL- Verbindung UNBEDINGT, um deine Datenbank zu definieren!!

    Du musst halt noch den User, Passwort und dein Database reinschreiben (wenn du z.B.: xampp hast ist die Standarteinstellung immer root als User, Passwort und Database musst du selber wissen)

    error_reporting(E_ALL) gibt nur Fehlermeldungen aus wenn welche da sind, damit du weißt, was falsch ist :)

    Du könntest es auch auf error_reporting(0) schalten, dann werden ALLE Fehlermeldungen unterdrückt :)

    http://de.php.net/manual/de/erro…error-reporting [Hier findest du ein Tutorial zu ERROR_REPORTING (wenn's dich interessiert :) )]

    MfG

    [C]arp[h]unter :)

    Wer ist dieser LAN und warum macht er so viele Parties?
    Internet, gibt's den Scheiß immer noch?
    Warum passieren mir nur Sachen, die sonst nur dummen Leuten passieren? :: NEIN!

  • schon klar nur ich mache das so:

    PHP
    $db = mysql_connect("luky.name.mysql","luky_name","geheim ;)") or 
    die ("Verbindung fehlgeschlagen");
    mysql_select_db("luky_name",$db);

    Einmal editiert, zuletzt von Now (19. Mai 2011 um 15:01)

  • @Now
    Man speichert Passwörter NIE im Klartext. Siehe bitte http://de.wikipedia.org/wiki/Einwegfunktion#Anwendungen. Ich meine damit: Mach soetwas niemals!

    @all
    md5 ist ziemlich schwach, vor allem, wenn es ungesalzen ist. Also lieber:

    Viele Grüße
    The User

  • @NOW:

    Ja, das stimmt auch.

    Es gibt in PHP insgesamt sehr viele Möglichkeiten (ich habe es wie oben gezeigt, gemacht)

    schon richtig so, wie's du gemacht hast :)

    The User:

    Danke für den Tipp, habe selbst meine Passwörter auch mit md5() verschlüsselt, werde es sofort ändern :)


    MfG

    [C]arp[h]unter

    Wer ist dieser LAN und warum macht er so viele Parties?
    Internet, gibt's den Scheiß immer noch?
    Warum passieren mir nur Sachen, die sonst nur dummen Leuten passieren? :: NEIN!

    2 Mal editiert, zuletzt von [C]arp[h]unter (19. Mai 2011 um 14:48)

  • Soll ich nun den quelltext von user nehmn denn bei mir wird immer nur 'Passwort falsch' ausgegeben also ehts nicht :(

  • @Carphunter
    Wenn du es ändern willst, würde ich so vorgehen:
    Ein zusätzliches MySQL-Feld für den neuen Hash anlegen und leer lassen für die Benutzer. Weiterhin mit md5 authentifizieren lassen, wenn sich einer einloggt, das Passwort mit dem md5-Hash abgleichen, wenn das korrekt ist, den md5-Hash löschen und den neuen mit dem Passwort berechnen und den speichern. Wenn sich manche nach einer Weile immer noch nicht angemeldet haben, kannst du ja das Passwort entfernen und sie müssen dann die Passwort-vergessen-Funktion nutzen.

    @Now
    Wie ist denn das Passwort momentan in der Datenbank abgelegt? Du musst dann auch myhash(passwort) in der Datenbank speichern (bei der Account-Erstellung/wenn das Passwort gesetzt wird, nicht das Passwort speichern sondern myhash($_POST['passwort']) (oder wo es auch immer herkommt)).

  • The User:

    Ich habe schon ein Feld, das Cookie_hash heißt und ist für den Login gedacht (ist das so richtig??)

    Nur leider komm ich mit meinem Login überhaupt nicht klar :(

    MfG

    [C]arp[h]unter

    Wer ist dieser LAN und warum macht er so viele Parties?
    Internet, gibt's den Scheiß immer noch?
    Warum passieren mir nur Sachen, die sonst nur dummen Leuten passieren? :: NEIN!

  • hä Wie jetzt? :confused: Also ich soll mein Passwort ändern und dann geht es? Sorry aber ich habe das mit dem MyHash nicht gecheckt

    Einmal editiert, zuletzt von Now (19. Mai 2011 um 20:04)

  • @Now
    Man speichert Passwörter NIE im Klartext. Siehe bitte http://de.wikipedia.org/wiki/Einwegfunktion#Anwendungen. Ich meine damit: Mach soetwas niemals!

    @all
    md5 ist ziemlich schwach, vor allem, wenn es ungesalzen ist. Also lieber:

    Viele Grüße
    The User


    Vielen Dank :)

  • @Carphunter
    Cookie_hash? Was? Wenn du nur die Hashfunktion änderst funktiornieren ja die alten Logins nicht mehr, darum gings mir.

    @Now
    Hast du dir das bei Wikipedia mal angeschaut? Das Prinzip sollte dir eben erst klar sein, bevor du das machst. Also dein Passwort darf nicht in der Datenbank stehen, du machst myhash(passwort) in PHP und das Ergebnis davon schreibst du in die Datenbank ins Passwortfeld. Klar?

  • :)okay danke also so ein MyHash password is so ein verschlüsseltes ne? Und ich hatte ja auch noch diese Fragen zum Quellcode. Ich wäre unendlich glücklich, wenn ihr mir diese noch beantworten könnt.
    VIELEN DANK!

  • Du meinst die Frage, welchen du nehmen sollst? Ich habe nur den von Carphunter genommen und das mit dem myhash eingefügt, also nimm den. Du sagst, da werde „falsches Passwort“ angezeigt, da solltest du eben mal prüfen, ob auch das richtige in der Datenbank steht (nämlich eben nicht das Passwort, sondern myhash(passwort)). Sonst weiß ich nichts von einer Frage.