Forum: PC-Programmierung PHP Loginformular geht nicht


von PPP (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich bastel gerade an einem 0815 Loginformular. Hat aktuell noch keine 
Verschlüsselung der Passwörter kommt aber noch.
Der Hintergrund ist so: ein Ordner mit den "Accounts". Eine Textdatei 
Name der Textdatei = Benutzername und darin steht dann das Passwort. 
Doch meine jetztige Konstruktion will noch nicht ganz. Alle Fälle werden 
richtig erkannt, außer der richtige Login. Vielleicht weiß ja jemand, ob 
ich einen Fehler gemacht hab.
Hier mal mein Code:
Den Code hab ich in ein txt file ausgelagert, da ich eine Forenmeldung 
bekam "Der Beitrag scheint Spam zu enthalten: " h r e f ="

von Timmo H. (masterfx)


Lesenswert?

Versuch mal
1
$pw2 = trim(fgets("accounts/".$username.".txt"));
Vielleicht hast du im Text-File nicht sichtbare Zeichen...
Das Passwort selbst wird aber auch ausgelesen, oder? Nicht dass er gar 
nicht erst das File einliest. (mal mit echo $pw2 ausgeben lassen)

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

fgets erwartet ein Filehandle!
Steht in der PHP Doku ein schönes Beispiel.
http://php.net/manual/de/function.fgets.php

Falls du dir das Leben einfach machen willst, benutz einfach 
file_get_contents
http://php.net/manual/de/function.file-get-contents.php

Ob eine Datei existiert prüft man zudem mit file_exits
http://php.net/manual/de/function.file-exists.php

von Timmo H. (masterfx)


Lesenswert?

Tatsache, hat er den File-Namen. Mit file_get_contents wärs direkt mit 
Pfad gegangen. Ist mir so entgangen...

von Geist (Gast)


Lesenswert?

>$username = $_POST['luser'];
>  $pw1 = $_POST['lpw'];
>
>  if ($pw1 == "") {
>  echo "Bitte Passwort eingeben!\n";
>  } else {
>  $fp = fopen("accounts/".$username.".txt","r");

Ein Code könnte ein schönes Beispiel für einen Cross domain script 
injection Angriff sein.

von PPP (Gast)


Lesenswert?

Danke, mit file_get_contents hats funktioniert.

BTW: Weiß jemand wie ich jemanden nun weiterleiten kann? Mit meinem HTML 
Code funktioniert das nicht -.-

von Nico S. (nico22)


Lesenswert?


von Troll (Gast)


Lesenswert?

Nico Sch. schrieb:
> header('Location: http://www.example.com/hierhin.php';);

Funktioniert bei seinem Code aber nicht, da schon eine Ausgabe erfolgte.


PPP schrieb:
> BTW: Weiß jemand wie ich jemanden nun weiterleiten kann? Mit meinem HTML
> Code funktioniert das nicht -.-

Deine Weiterleitung funktioniert nicht, da der Metatag in den 
<head>-Bereich gehört! Du musst dein Script grundsätzlich ändern, da das 
so nicht gehen kann. Wenn du dich an die EVA 
(http://de.wikipedia.org/wiki/EVA-Prinzip) hälst, löst sich dein Problem 
von ganz alleine. Erst Daten prüfen (Verarbeitung), dann Seite erzeugen 
(Ausgabe).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.