online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon Uesch vom 15.04.2019, 02:42 Options

Benötige Hilfe beim Passwort zurücksetzen

Hallo allerseits.
Bin grade sehr verwundert und verstehe nix mehr. Ich habe ein MySQL-Login, bei dem ich nun eine Art "Passwort vergessen-Funktion" einbauen möchte. Dazu soll ein zufälliges Passwort gebildet werden und an die vorher in einem Formular eingegebene Email gesendet werden. Das funnktioniert alles auch wunderbar, nur leider ändert er das Passwort in der Datenbank nicht! Das komische ist, dass es in einer anderen PHP mit dem gleichen Code funzt.

Hier ist der Code, vll könnt Ihr irgendwelche Fehler entdecken?

$subject = "Ihr Passwort bei Homepage";
$more = "From: meine@email.land\r\nReturn-Path: meine@email.land\r\nContent-Type:text";
$anz=6;
if ($anz){
$chars = ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890");
for ($i = 0; $i < $anz; $i++) {
$password .= $chars{mt_rand (0,strlen($chars))};
}

}

$connectionid = mysql_connect ("localhost", "User", "Passwort");
if (!mysql_select_db ("Datenbank", $connectionid))
{
die ("Keine Verbindung zur Datenbank");
}
$sql = "SELECT
email, username
FROM
test_users
WHERE
email = '".$Email."'";

$result = mysql_query ($sql);
while($row = mysql_fetch_object($result))
{
$body="Guten Tag $row->username,\n\nSie haben ein neues Passwort angefordert!\nDas neue zufällig erstellte Passwort lautet: $password \n\n\nMeine Homepage\n\nFalls Sie Ihr Passwort nicht zurückgesetzt haben, gehen Sie bitte in Ihr Profil und ändern Sie das Passwort wieder!";

}

if (mysql_num_rows ($result) == "0") {
echo("Es ist kein Benutzer mit dieser Emailadresse in unserer Datenbank vorhanden!");
die();
}
elseif (mysql_num_rows ($result) > 0) {

$aendern = "UPDATE test_users Set passwort = '".md5 ($password)."'
WHERE id = '".$_SESSION["user_id"]."'";

$eintragend = mysql_query($aendern);
mail("$Email", $subject,$body, $more);
header("Location: profil.php");
}


Antwort schreiben

Antwort 1 von Sichtbarer vom 02.05.2019, 13:07 Options

Hallo,

versuch mal die Zeilen
$aendern = "UPDATE test_users Set passwort = '".md5 ($password)."'
WHERE id = '".$_SESSION["user_id"]."'";


so zu ändern:

$user_id2 = $_SESSION["user_id"];
$aendern = "UPDATE test_users Set passwort = '".md5 ($password)."'
WHERE id = '".$user_id2."'";

Antwort 2 von DeluxeStyle vom 02.05.2019, 13:36 Options

hast schon überprüft, ob die $_SESSION["user_id"] gesetzt ist?

für mich sieht es so aus, als ob die Session leer wäre und daher wird nix geändert

Antwort 3 von Uesch vom 04.05.2019, 21:58 Options

Ihr hattet Recht. Ich war wohl etwas übermüdet. Es gab keine Session user-id. Habe das Problem aber jetzt anders geregelt.

Vielen Dank!

Ähnliche Themen

SmartBase MPC190 auf Werkseinstellung zurücksetzen
stepi  27.06.2007 - 242 Hits -

Passwort für Systemsetup zurücksetzen
optimfish  23.12.2007 - 92 Hits - 3 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026