PHP Passwort ändern
Passwort ändern
Ich brauche einen PHP-Script um das Passwort zu ändern:
ich finde den Fehler einfach nicht. Wenn ich die Datei teste dann steht übrigens das:
Notice: Undefined index: username in C:\Users\Toni\Desktop\Programmieren\xampp\htdocs\test\passwortaendern.php on line 2
Notice: Undefined index: username in C:\Users\Toni\Desktop\Programmieren\xampp\htdocs\test\passwortaendern.php on line 3
das versteh ich nicht. Wieso steht das da?
Ich brauche einen PHP-Script um das Passwort zu ändern:
<?php
$username = $_POST["username"];
$password = $_POST["password"];
$newpassword = $_POST["newpassword"];
$newpassword2 = $_POST["newpassword2"];
if ($newpassword == $newpassword2)
{
$userdatei = fopen("user.txt","r+");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,5000);
$userdata = explode("|", $zeile);
}
rewind($userdatei, $password and $username);
fwrite($userdatei, $username);
fwrite($userdatei, "\n");
fwrite($userdatei, $newpassword);
fclose($userdatei);
}
?>
ich finde den Fehler einfach nicht. Wenn ich die Datei teste dann steht übrigens das:
Notice: Undefined index: username in C:\Users\Toni\Desktop\Programmieren\xampp\htdocs\test\passwortaendern.php on line 2
Notice: Undefined index: username in C:\Users\Toni\Desktop\Programmieren\xampp\htdocs\test\passwortaendern.php on line 3
das versteh ich nicht. Wieso steht das da?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 163963
Url: https://administrator.de/contentid/163963
Ausgedruckt am: 05.11.2024 um 08:11 Uhr
8 Kommentare
Neuester Kommentar
Zitat von @weissnichtwas:
das die variable undefiniert ist weiss ich auch, ich finde es eben komisch das es über $_POST nicht geht
Ich quote mich mal wieder selber...das die variable undefiniert ist weiss ich auch, ich finde es eben komisch das es über $_POST nicht geht
Weil das Feld "username" nicht in deinem Formular, *das du nicht gepostet hast*, vorkommt.
Zaunpfahl und so
Du könntest natürlich mal einen var_dump machen.
Dann siehst du das auch.
Dann siehst du das auch.
Hi
sag ein mal, was hast du mit diesem Script überhaupt vorgehabt ?
Das ist meiner Meinung teilweise sogar überflüssig...
Z.B.: Die Zeilen 10-14, die While-Schleife, sie durchläuft einmal die gesamte Datei und teile jede Zeile anhand der Pipe (|) wobei $userdata immer wieder __überschrieben__ wird.
Zeile 15, rewind(), hm.. laut PHP-Manual - rewind() erwartet die Funktion nur einen Parameter und setzt außerdem den Dateizeiger wieder auf __den Anfang__ der Datei.
Zeile 16, write $username, jetzt wird der vorhandene Text mit dem Usernamen (die vermutlich identisch sind) überschrieben (Was wenn der neue Name __kürzer__ ist !?)
Zeile 17, write \n, wieso schreibst du denn nun einen Zeilenumbruch ? In der While-Schleife lässt die Die Zeilen doch anhand der Pipe trennen !?
Zeile 18, write $newpassword, Hm... Passwörter sollen nicht in Klartext gespeichert werden, dann kann sie ja jeder lesen ! (Selbe Problematik wie in Zeile 16: Was wenn das neue Passwort __kürzer__ ist !?)
Also, was hattest du eigentlich vor und wie sollen die Daten gespeichert werden, alle in eine Zeile durch die Pipe getrennt, Name und Passwort in je eine Zeile, stehen nur die Daten eines Users in der Datei oder sind es mehrere Datensätze !?
ES = das eine Notice erzeugt wird ? Funktioniert doch prima :p ;)
~Arano
sag ein mal, was hast du mit diesem Script überhaupt vorgehabt ?
Das ist meiner Meinung teilweise sogar überflüssig...
Z.B.: Die Zeilen 10-14, die While-Schleife, sie durchläuft einmal die gesamte Datei und teile jede Zeile anhand der Pipe (|) wobei $userdata immer wieder __überschrieben__ wird.
Zeile 15, rewind(), hm.. laut PHP-Manual - rewind() erwartet die Funktion nur einen Parameter und setzt außerdem den Dateizeiger wieder auf __den Anfang__ der Datei.
Zeile 16, write $username, jetzt wird der vorhandene Text mit dem Usernamen (die vermutlich identisch sind) überschrieben (Was wenn der neue Name __kürzer__ ist !?)
Zeile 17, write \n, wieso schreibst du denn nun einen Zeilenumbruch ? In der While-Schleife lässt die Die Zeilen doch anhand der Pipe trennen !?
Zeile 18, write $newpassword, Hm... Passwörter sollen nicht in Klartext gespeichert werden, dann kann sie ja jeder lesen ! (Selbe Problematik wie in Zeile 16: Was wenn das neue Passwort __kürzer__ ist !?)
Also, was hattest du eigentlich vor und wie sollen die Daten gespeichert werden, alle in eine Zeile durch die Pipe getrennt, Name und Passwort in je eine Zeile, stehen nur die Daten eines Users in der Datei oder sind es mehrere Datensätze !?
ich finde es eben komisch das es über $_POST nicht geht
Definiere "ES" !ES = das eine Notice erzeugt wird ? Funktioniert doch prima :p ;)
~Arano