Kennwortänderung für Frontenduser

Gesperrt
ReneFFM
Beiträge: 11
Registriert: Fr 17. Feb 2006, 12:59
Wohnort: Langen D-63225
Kontaktdaten:

Kennwortänderung für Frontenduser

Beitrag von ReneFFM »

Hallo,

ich habe hier ein kleines Modul für eine Vereinsseite geschrieben, welche es Mitgliedern ermöglichen soll, ihr Kennwort selber zu ändern.

Meine Frage ist, da ich relativ neu in der Materie bin, kann man das in dieser Form verwenden, oder gibt es dabei Problematiken ???

Code: Alles auswählen

<?php

$nname = urlencode($auth->auth['uname']);
$surl = $sess->url("front_content.php?idcat=$idcat&idart=$idart&parentid=$parentid");
    
/* Kennwor neu schreiben */
function neuschreiben($nname, $surl, $npw)
{
  $write_new_pw = "UPDATE `mfc_frontendusers` SET `password`='$npw' WHERE `username` = '$nname'";
  mysql_query($write_new_pw);
}
    
/* Ausgabe des Formulars in HTML */
function formular($surl)
{
  echo "
  <form method=\"post\" action=\"$surl\">
  <table border=\"0\">
  <tr><td>Neues Passwort eingeben</td></tr>
  <tr><td><input type=\"password\" name=\"new_pw1\" value=\"\"></td></tr>
  <tr><td>Bestätigung</td></tr>
  <tr><td><input type=\"password\" name=\"new_pw2\" value=\"\"></td></tr>
  </table>
  <input type=\"submit\" name=\"pw_chg\" value=\"Aendern\">
  </form><br>";
}


/* Funktionsausführung */
if($_REQUEST['pw_chg'] == 'Aendern')
{
  if($_REQUEST['new_pw1'] == $_REQUEST['new_pw2'])
  {
    $npw = md5($_REQUEST['new_pw1']);
	neuschreiben($nname, $surl, $npw);
	print "Vielen Dank. Ihre Daten wurden erfolgreich geändert und sind beim nächsten Login aktiv.";		    
  }
  else
  {
    print "Sie haben zwei nicht übereinstimmende Kennwörter eingegeben.<br>Bitte geben Sie zwei gleiche Kennwörter ein.";
    formular($surl);
  }
}
else
{
  formular($surl);
}

    
?>
Vielen Dank im voraus....
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Nun, wie soll ich sagen... Unter Module 4.6 gibt es das Change Password-Modul.

Größere Probleme sehe ich ansonsten nicht, Du hättest in der Abfrage auch einfach $auth->auth["uid"] nehmen können, weniger aufwendig (statt über den Namen).

Stilistisch wäre es natürlich schön, wenn die Frontend User-Klassen verwendet werden würden, aber so geht es auch...

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Gesperrt