Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Passwort vergessen funktion -- php und mysql

Einklappen

Neue Werbung 2019

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

  • coraplanet
    hat ein Thema erstellt [Erledigt] Passwort vergessen funktion -- php und mysql.

    [Erledigt] Passwort vergessen funktion -- php und mysql

    PHP-Code:
    <?php sesison_start(); include('navi.php'); include('settings-reg.inc.php');
    ...
    <?
    php  $u_name $_POST['u_name'];
      
    $e_mail $_POST['e_mail'];
      if(isset(
    $u_name)){
       
    $abfrage "SELECT * FROM usr_web1036_5.u_users WHERE u_name = '".$u_name."';";
       
    $ergebnis mysql_query($abfrage) or die(mysql_error());
       while(
    $row mysql_fetch_object($ergebnis))
        {
             
    $to $row->e_mail;
             
    $subject "Sie haben sich Ihr Passwort zusenden lassen";
             
    $msg "Hallo ".$row->u_name." auf www.cora-planet.de haben Sie sich Ihr Passwort wieder zusenden lassen./n/n Username: ".$row->u_name."/n Passwort: ".$row->u_pass."/n/nDie Mitarbeiter von www.cora-planet.de und www.flychat.de werden Sie auch niemals nach Ihrem Passwort fragen.\n\nBitte beachten Sie, das es sich hierbei um eine vom System automatisch generierte E-Mail handelt. Bitte Antworten Sie nicht auf diese Mail.";
             
    $headers "From: system@cora-planet.de\nReply-To: sendolight@aol.com";
             
    $config "-fkontakt@cora-planet.de";
             
    mail("$to""$subject""$msg""$headers""$config");

             
    $to "kontakt@cora-planet.de";
             
    $subject $row->u_name." hat sein Passwort vergessen.";
             
    $msg =  $u_name." hat sein Passwort vergessen und die Passwort vergessen Funktion auf www.cora-planet.de genutzt.\nDiese Person hat bereits die Passwort Mail mit den persönlichen Zugangsdaten erhalten.\n\n Bitte beachten Sie, das es sich hierbei um eine vom System automatisch generierte E-Mail handelt. Bitte Antworten Sie nicht auf diese Mail.";
             
    $headers "From: system@cora-planet.de\nReply-To: sendolight@aol.com";
             
    $config "-fkontakt@cora-planet.de";
             
    mail("$to""$subject""$msg""$headers""$config");
        }
        }
       else if(isset(
    $e_mail{
    //Zeile 96-->   $abfrage = "SELECT u_pass FROM usr_web1036_5.u_users WHERE u_name = '".$_SESSION['u_name']."';";
       
    $ergebnis mysql_query($abfrage) or die(mysql_error());
       while(
    $row mysql_fetch_object($ergebnis))
            {
             
    $to $row->e_mail;
             
    $subject "Sie haben sich Ihr Passwort zusenden lassen";
             
    $msg "Hallo ".$row->u_name." auf www.cora-planet.de haben Sie sich Ihr Passwort wieder zusenden lassen./n/n Username: ".$row->u_name."/n Passwort: ".$row->u_pass."/n/nDie Mitarbeiter von www.cora-planet.de und www.flychat.de werden Sie auch niemals nach Ihrem Passwort fragen.\n\nBitte beachten Sie, das es sich hierbei um eine vom System automatisch generierte E-Mail handelt. Bitte Antworten Sie nicht auf diese Mail.";
             
    $headers "From: system@cora-planet.de\nReply-To: sendolight@aol.com";
             
    $config "-fkontakt@cora-planet.de";
             
    mail("$to""$subject""$msg""$headers""$config");

             
    $to "kontakt@cora-planet.de";
             
    $subject $row->u_name." hat sein Passwort vergessen.";
             
    $msg =  $u_name." hat sein Passwort vergessen und die Passwort vergessen Funktion auf www.cora-planet.de genutzt.\nDiese Person hat bereits die Passwort Mail mit den persönlichen Zugangsdaten erhalten.\n\n Bitte beachten Sie, das es sich hierbei um eine vom System automatisch generierte E-Mail handelt. Bitte Antworten Sie nicht auf diese Mail.";
             
    $headers "From: system@cora-planet.de\nReply-To: sendolight@aol.com";
             
    $config "-fkontakt@cora-planet.de";
             
    mail("$to""$subject""$msg""$headers""$config");
        }
        } 
    ?>
    Fehlermeldung: Parse error: syntax error, unexpected ';' in /var/www/html/web1036/html/forgetpw2.php on line 96

    das soll ne funktion sein wo man sich sein passwort aus der db wieder per e-mail zusenden lassen kann

    ich find den fehler net ... sieht einer von euch ihn??

  • lazydog
    antwortet
    Zitat von coraplanet Beitrag anzeigen
    at ... aber ich weiß nicht wo der fehler liegt...
    Offensichtlich wurde das Formular nicht ausgefüllt. Aber da sind wir wieder irgendwo am Anfang ...

    Einen Kommentar schreiben:


  • coraplanet
    antwortet
    also
    PHP-Code:
    $_SESSION['u_name'
    kann nichts zurückgebe weil wenn ich mein passwort vergessen habe dann kann ich mich auch nicht einloggen, soweit so gut.

    jetzt habe ich versucht die sql abfrage statt mit der SESSION variable mit der POST variable durchzuführen und bekomme folgende message geliefert

    Notice: Undefined index: u_name in /var/www/html/web1036/html/forgetpw2.php on line 75 Notice: Undefined index: e_mail in /var/www/html/web1036/html/forgetpw2.php on line 76 Notice: Undefined index:

    ich hab aber schon überall nachgeschaut ... aber ich weiß nicht wo der fehler liegt...

    Einen Kommentar schreiben:


  • lazydog
    antwortet
    Zitat von coraplanet Beitrag anzeigen
    wer sagt denn das die passwörter im klartext abgespeichert wird??
    Dein Code! Ausser du schickst dem Benutzer das verschlüsselte PW zu, was wiederum auch nicht viel Sinn macht.
    Aber das ist hier ja nicht das Thema, die Frage ist immer noch die nach $_SESSION['u_name']

    Einen Kommentar schreiben:


  • coraplanet
    antwortet
    Zitat von lazydog Beitrag anzeigen
    Ausserdem würde ich mich nie in einem Sytem anmelden in dem ich weiss, dass das Passwort unverschlüsselt abgelegt wird. Aber dann müsste das Vorgehen natürlich anders sein:
    • Passwort mit MD5() oder SHA1() verschlüsselt in der DB ablegen.
    • Beim Login eingebenes Passwort verschlüsseln und mit dem aus der DB vergleichen
    • Wenn Passwort vergessen: neues generieren, verschlüsselt in DB eintragen, verschicken und Benutzer zwingen, dieses beim nächsten Login zu ändern
    wer sagt denn das die passwörter im klartext abgespeichert wird?? ich war schon so schlau und habe die passwörter mit md5 verschlüsseln lassen ... hab meiner db sogar beigebracht das er das von ganz alleine macht (weißt ja wie ich das meine) ...

    best regards

    Einen Kommentar schreiben:


  • lazydog
    antwortet
    Die Frage ist noch, was in $_SESSION['u_name'] steht, bzw. lass mal $abfrage ausgeben.
    Deine Abfragen dürften eigentlich nur einen Satz zurückgeben, deshalb brauchst du keine while-Schleifen.

    Ausserdem würde ich mich nie in einem Sytem anmelden in dem ich weiss, dass das Passwort unverschlüsselt abgelegt wird. Aber dann müsste das Vorgehen natürlich anders sein:
    • Passwort mit MD5() oder SHA1() verschlüsselt in der DB ablegen.
    • Beim Login eingebenes Passwort verschlüsseln und mit dem aus der DB vergleichen
    • Wenn Passwort vergessen: neues generieren, verschlüsselt in DB eintragen, verschicken und Benutzer zwingen, dieses beim nächsten Login zu ändern

    Einen Kommentar schreiben:


  • HPR1974
    antwortet
    also normalerweise klickt man auf passwort vergessen, dann wird man auf ein Formular gelietet in dem man seinen namen und emailadresse eingibt. die eingaben werden dann geprüft, ob vorhanden, dann wird zu dem namen ein neues passwort generiert und abgelegt und der im system hinterlegten emailadresse zugesendet. oder man generiert einen code der geschickt wird, mit dem man dann auf einer Webseite ein neues passwort selbst setzen kann. das hat den vorteil, dass das passwort nicht einfach überschrieben wird (wenn gute Freunde neue passworte anfordern).

    Wenn Du das passwort natürlich im klartext gespeichert hast kannst Du es auch direkt zusenden, allerdings zeigt das natürlich, dass passworte in deinem System nicht verschlüsselt sind oder einfach entschlüsselt werden können, was nicht wirklich für sicherheit bürgt.

    Einen Kommentar schreiben:


  • coraplanet
    antwortet
    weiß keiner rat?? ich krieg das iwie net auf die reihe.... oder kann mir einer erklären wie sowas funktioniert?? (also auf anderen seiten wenn ich da auf passwort versenden klicke)

    Einen Kommentar schreiben:


  • cycap
    antwortet
    Verschoben zu den Anfängern

    Einen Kommentar schreiben:


  • coraplanet
    antwortet
    kann man das denn nicht auch etwas anders schreiben?? ich wollte es folgendermaßen machen:

    1. man klickt auf passwort vergessen und kommt zu nem formular wo man username oder e-mail adresse eingeben muss mit der man sich registriert hat

    2. wenn man dann auf abschicken drückt hole ich mir diese daten mit einer variable $_POST['u_name'] oder $_POST['e_mail'] rüber

    3. auf der 2. seite wollte ich nun mittels dieser variable die db auslesen und demnach eine mail an diesen user schicken wo dann das pw drinne steht

    so und irgendwie scheinte es ja schon bei punkt 2 zu scheitern, da er mir ja für echo $row->e_mail; schonmal keine daten ausgegeben hatte vorhin ... oder liegt das an der abfrage??

    Einen Kommentar schreiben:


  • coraplanet
    antwortet
    Tja, dann würde ich mal prüfen, ob
    a) die Spalte wirklich e_mail heißt und ob
    b) der Wert in der Datenbank überhaupt belegt ist.
    zu a) sage ich mal true spalte heißt e_mail

    zu b) sage ich mal true wert ist in der datenbank belegt

    das is ja das problem warum macht ers dann nicht wenn alles vorhanden ist??

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    Tja, dann würde ich mal prüfen, ob
    a) die Spalte wirklich e_mail heißt und ob
    b) der Wert in der Datenbank überhaupt belegt ist.

    Einen Kommentar schreiben:


  • coraplanet
    antwortet
    ich hab gerade ein echo für die e-mail adresse ausgegeben und er schreibt mir ........ nix

    .... ich weiß aber jetz auf anhieb net wie ich das etwas anders formulieren könnte... wenn ihr mir tipps geben könntet das wäre sehr nett von euch

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    Hast du error_reporting auf E_ALL gesetzt? Kann es vielleicht sein, dass der Mail-Cron noch ein wenig braucht? ist die E-Mail-Adresse richtig?

    Einen Kommentar schreiben:


  • coraplanet
    antwortet
    Zitat von Manko10 Beitrag anzeigen
    Syntax-Fehler im Profi-Forum?
    Unexpected xyz in abc on line def heißt immer, dass man in der Zeile davor nach Syntaxfehler schauen sollte und mir fällt da auch sofort einer auf.
    oh mann ich hab heut echt den wurm drinne is klar da haben 2 mal )) gefhelt nach if(isset($e_mail)) klar jetzt ists mir aufgefallen .... hab das zuerst nicht gesehen sorry aber danke für den hinweis...

    da is aber noch irgend nen fehler drinn... mir wird jetz kein fehler mehr angezeigt jedoch wird keine mail versendet.....

    Einen Kommentar schreiben:

Lädt...
X