Steffen Giers
Erfahrenes Mitglied
Guten Tag,
Ich versuche schon seit 2 tagen eine Clientseitige Möglichkeit ein Userpasswort durch den User ändern zu lassen. Im Prinzip genau wie hier im Forum.
Ich habe soweit auch alles hinbekommen nur in der Kontrollstruktur haperts bei mir. Ich denke das es ein logischer Fehler von mir ist.
Also...
Verbindung zur Datenbank funktioniert
Auswahl der Datenbank auch
Eindeutig User Identifizierung geht auch
Auswahl des User spezifischen Datensatzes haut auch hin
Formular ist erstellt
Namen der Inputfelder sind:
Passwort (name="pwd")
Neues Passwort (name="npwd")
Neues Passwort wdh. (name="npwdw")
Ich kann mit meinem Script das Passwort bereits ändern. Aber jetzt das Problem:
Ich gebe das alte Passwort (pwd) ein und nur die Wiederholung vom neuen Passwort und er sagt mir fehler beim Eintragen. Was ja auch logisch ist weil das Feld neues Passwort (npwd) und Neues Passwort wdh.(npwdw) nicht gleich ist weil in einem nix drinne steht. Aber Trotzdem wird das passwort in der Datenbank geändert. Das soll es ja nicht!
Im Endeffekt soll er nur den befehl UPDATE ausführen wenn das Neue Passwort mit der Wiederholung übereinstimmt.
Ich hoffe ich habe mich einigermaßen Verständlich ausgedrückt.
Beides steht in einer Datei. Der PHP Code über dem HTML!
Danke für eure Ratschläge!
Ich versuche schon seit 2 tagen eine Clientseitige Möglichkeit ein Userpasswort durch den User ändern zu lassen. Im Prinzip genau wie hier im Forum.
Ich habe soweit auch alles hinbekommen nur in der Kontrollstruktur haperts bei mir. Ich denke das es ein logischer Fehler von mir ist.
Also...
Verbindung zur Datenbank funktioniert
Auswahl der Datenbank auch
Eindeutig User Identifizierung geht auch
Auswahl des User spezifischen Datensatzes haut auch hin
Formular ist erstellt
Namen der Inputfelder sind:
Passwort (name="pwd")
Neues Passwort (name="npwd")
Neues Passwort wdh. (name="npwdw")
Ich kann mit meinem Script das Passwort bereits ändern. Aber jetzt das Problem:
Ich gebe das alte Passwort (pwd) ein und nur die Wiederholung vom neuen Passwort und er sagt mir fehler beim Eintragen. Was ja auch logisch ist weil das Feld neues Passwort (npwd) und Neues Passwort wdh.(npwdw) nicht gleich ist weil in einem nix drinne steht. Aber Trotzdem wird das passwort in der Datenbank geändert. Das soll es ja nicht!
Im Endeffekt soll er nur den befehl UPDATE ausführen wenn das Neue Passwort mit der Wiederholung übereinstimmt.
Ich hoffe ich habe mich einigermaßen Verständlich ausgedrückt.
PHP:
<?php
include ('checkuser.php');
//verbindung zur Datenbank : "Verzeichnis", "Benutzter", "Passwort":
mysql_connect ( "localhost",
"root",
"")
or die (mysql_error());
//Datenbank Auswahl:
mysql_select_db ("v157203");
//Eindeutige Useridentifizierung:
mysql_query (" SELECT *
FROM users
WHERE login ='".$_SESSION["user_id"]."'")
or die (mysql_error());
/*Datensatz ändern und überprüfen ob Passwort gleich ist.
Setze in spalte: pwd, neues passwort(npwdw) wenn pwd = altes passwort */
$update = mysql_query ("UPDATE users
SET pwd = '$npwdw'
WHERE pwd = '$pwd'")
or die (mysql_error());
//Passswort Verifizierung:
if (($_POST['npwd']) == ($_POST['npwdw']))
{
$update;
}
else
{
$meldung = "Fehler bei Passworteingabe!";
}
?>
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Home Page-Dj Nelson.de</title>
<link rel="stylesheet" type="text/css" href="css/mainstylesheet.css">
</head>
<body>
<!--Gesamtinhaltsbox(Container)-Anfang-->
<div id="container">
<h1 id="header"></h1>
<ul class="mainnav">
<li><a href="index.php">Home</a></li>
<li><a href="#">Portofilio</a></li>
<li><a href="">Musik</a></li>
<li><a href="#">Kontakt</a></li>
<li><a href="#">Linkage</a></li>
</ul>
<div id="spalte_links">
<ul class="subnav ">
<h2>Sub Überschrift</h2>
<li><a href="#">Submenüpunkt 1</a></li>
<li><a href="logout.php">Logout</a></li>
<li><a href="seite2.php">Zu Seite 2</a></li>
<li><a href="pwdupdate.php">Passwort Ändern</a></li>
<li><a href="#">Submenüpunkt 5</a></li>
</ul>
</div>
<div id="spalte_rechts">
<div class="contentblock">
<h3>Passwort Ändern</h3>
<h4>Hier können Sie ihr Userpasswort ändern!</h4>
<p><form class="kontakt" action="<?=$_SERVER['PHP_SELF']?>" method="post">
<fieldset>
<label>Passwort</label>
<input type="password" name="pwd">
<label>Neues Passwort</label>
<input type="password" name="npwd">
<label>Neues Passwort wdh.</label>
<input type="password" name="npwdw">
<label> </label>
<input type="submit" name="aendern" value="Ändern">
</fieldset>
</form>
</p>
<p><?=$meldung?></p>
</div>
<p id="footer">
<a href="#">|css|</a>
<a href="#">|xhtml|</a>
<a href="#">|imprint|</a>
</p>
</div>
<!--Gesamtinhaltsbox(Container)-Ende-->
</body>
</html>
Beides steht in einer Datei. Der PHP Code über dem HTML!
Danke für eure Ratschläge!