Hallo alle zusammen.
Ich habe mir da ein Script für die fuktion Passwort vergessen gebastelt.
Jetzt habe ich das Problem, das das neu generierte Passwort nicht in die Datenbank gespeichert wird.
Kann mir da jemand von euch Helfen ?
Wäre euch sehr Dankbar.
PHP-Code:
<?php
session_start ();
include "include/db_verbindung.php";
// Auslesen des Formulars und zuweisen in Variablen
//*************************************************
$benutzername = $_POST['benutzername'];
$email = $_POST['email'];
$passwort = $_POST['passwort'];
$passwort3 = $_POST['passwort3'];
$passwort_md5 = md5($passwort);
$passwort3_md5 = md5($passwort3);
/*********************************************************************************/
// Formular
?>
<form method="post" action="">
<table>
<tr>
<td>Benutzername:</td>
<td>E-Mail Adresse:</td>
<td> </td>
</tr>
<tr>
<td><input type="text" name="benutzername" size="25"></td>
<td><input type="email" name="email" size="25"></td>
<td><input type="submit" value="Anfordern" name="senden"></td>
</tr>
</table>
</form><br>
<?php
/*********************************************************************************/
// Abfrage ob richtiger Benutzer und E-Mail stimmen und senden des Passwortes
if (isset($_POST['senden']) == true)
{
if ($fehlermeldung == "")
{
// SELECT-Befehl für Abfrage einer Tabelle
// ***************************************
$anfrage = "SELECT passwort FROM userdaten WHERE benutzername = '".mysql_real_escape_string($_POST['benutzername'])."'
AND email = '".mysql_real_escape_string($_POST['email'])."'";
$ergebnis = $db -> query($anfrage);// Senden an Dabenbank
// Wenn Daten gefunden wurden
if ($ergebnis -> num_rows > 0)
{
echo "Benutzerdaten sind OK!<br>";
}
// Schleife, solange Daten im Ergebnis vorhanden sind, soll ausgegeben werden.
while ($datenzeile = $ergebnis -> fetch_assoc())
{
// Ausführen der Aktionen (Ausgaben, Berechnung etc, z.B.:
echo "";
}
}
else
{
echo "Keine Daten gefunden!<br>";
}
/*********************************************************************************/
// Neues Passwort generrieren
$passwort3 = substr(md5(time().microtime()),0,6);
/*********************************************************************************/
// neues Passwort in Batenbank schreiben
$anfrage = "UPDATE userdaten SET passwort = '$passwort3_md5'
WHERE benutzername = '$benutzername'
AND email = '$email'";
$ergebnis = $db -> query ($anfrage) OR die(mysql_error());
if ($ergebnis -> num_rows > 0)
{
echo $db -> affected_rows." Passwort wurden geändert!<br>Ihnen wurde eine E-mail zugesendet.<br>";
}
else
{
echo "Änderung Fehlgeschlagen!<br>";
}
/*********************************************************************************/
// Auffbau des Mailversands.
// An den neuen Benutzer.
$an = $email;
$betreff = "Passwort";
$absender = "From:BullDog13@gmx.net";
$mailinhalt = "Sie haben Ihr Passwort angefordert!\n\n";
$mailinhalt .= "Ihr Passwort wurde Ihnen zugeschickt, und lautet:\n\n";
$mailinhalt .= "Passwort:".$passwort3."\n";
@mail($an,$betreff,$mailinhalt,$absender);
?>
<meta http-equiv="refresh" content="5;URL=index.php?seite=login_inc"></meta>
<?php
$db -> close();
} // ende if klammer send button
?>