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

  • [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??

  • #2
    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.
    Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

    Kommentar


    • #3
      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.....

      Kommentar


      • #4
        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?
        Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

        Kommentar


        • #5
          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

          Kommentar


          • #6
            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.
            Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

            Kommentar


            • #7
              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??

              Kommentar


              • #8
                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??

                Kommentar


                • #9
                  Verschoben zu den Anfängern

                  Kommentar


                  • #10
                    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)

                    Kommentar


                    • #11
                      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.

                      Kommentar


                      • #12
                        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
                        Gruss
                        L

                        Kommentar


                        • #13
                          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

                          Kommentar


                          • #14
                            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']
                            Gruss
                            L

                            Kommentar


                            • #15
                              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...

                              Kommentar

                              Lädt...
                              X