Servus,
verwende ein "vorgerfertigtes" Login-S***** von PHP-Einfach.de
Einzusehen [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
Das Problem ist, dass ich das alles jetz meinen Ansprüchen nach verändert habe, die Anmeldung funktioniert einwandfrei, nur der Login-S***** zeigt mir fehlermeldungen an, egal ob ich direkt auf die Datei verweise oder aber die Datei darein verschiebe wo das s***** arbeitet es kommt immer folgende Meldung:
Warning: fopen(12q3ejndsf056d.txt) [function.fopen]: failed to open stream: No such file or directory in C:\xampp\htdocs\CftDs\module\login\login.php on line 8
Warning: feof() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\CftDs\module\login\login.php on line 9
Warning: fgets() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\CftDs\module\login\login.php on line 11
Das eigenartige ist, dass die letzten beiden Meldungen 1000fach wiederholt darunter stehen.
Bei der ersten Warnung würde ich einfach mal drauf schließen, dass es keine Datei mit dem Namen "12q3ejndsf056d.txt" gibt in dem Verzeichniss, welches du angegeben hast. Das erklärt dann auch die zwei anderen Fehler.
Für solche Sachen hilft auch das PHP-Manual weiter.
Also die Datei exestiert, es ist die Datei, wo die Userdaten gespeichert werden. Bissel umständlich und vllt auch unsicher aber Anfänglich reicht es erstmal.
Ich schaue mir mal das Manual an und schaue genaustens hin wo ich ein Fehler gemacht haben könnte beim umschreiben. Danke dir aber für den Hinweis wo ich suchen kann!
Edit:
Musste alles jetzt in ein ORdner packen, hat leider nicht mit meiner Ordnung geklappt. Was solls..
ich habe das modifizierte S***** bei mir einmal getestet und konnte den Fehler reproduzieren.
Offenbar sollen 3 Unterordner "user", "login" und "anmeldung" verwendet werden.
Damit muss im "fopen..." der (relative) Pfad zur 12q3ejndsf056d.txt Datei hinzukommen.
Etwas verwundert hat mich der "Anmeldung" Link in der "log_form.php".
Den vorhandene Button "belegen" wir korrekt durch den Eintrag in der [form action="" (...) ] Zeile.
Ich hoffe ich verderbe keinen Spass am Knobeln, wenn ich hier die (bei mir)
funktionierende Variante für das S***** poste.
Ich setze es daher einmal in den Spoiler.
In "module/login" (Ich habe die Dateien von "PHP-Einfach.de" zum testen [ = Erstellen von Zugängen] dazu genommen):
log_form.php :
if ($userdata[0]==$username and $passwort==trim($userdata[1])) { $_SESSION['username'] = $username; echo "Login war erfolgreich. <a href=\"../user/index_user.php\">Weiter</a>"; $log = 1; } } fclose($userdatei);
if ($log==0) { echo "Zugriff verweigert <a href=\"../login/log_form.php\">Zurück</a>"; } ?>
Im Ordner "module/user" befindet sich dann die durch die "session" geschützte
Datei mit dem geschützten Inhalt ab "html". Der obere php- Teil, Sinnvollerweise, auf jede geschütze Seite kopieren. Also:
<html> Herzlich Willkommen im geschützen Bereich --- ALLES OK! </html>
Ich möchte nur darauf hinweisen, dass diese Art von Schutz überwindbar ist und es bei Produktivsystemen eher mit einer Datenbank gelöst wird. Wenn der Hoster es anbietet wäre die ".htaccess" - Lösung auch immer etwas besser. Für Privat, im lokalen Netz und zum Lernen reicht es.
entsteht (normalerweise) ein "Button", genau genommen ein "Submit-Button", also ein Knopf zum absenden des Formulars.
Wenn doch ein Link bevorzugt wird, dann einfach die Auskommentierung
Das sollte dann auch mit den 3 gewünschten Ordnern gehen.
Was hier also nur gemacht wurde ist vom Verzeichnis, in dem sich die aktuell ausgeführte Datei befindet einen "relativen" Sprung eine Ebene nach unten (durch die "..", also auf /module/) und dann wieder in den gewünschten Ordner mit der anderen Datei, hier Ordner "anmeldung", Datei "anmeldung_form.php". Das ist alles keine wilde Hexerei und sollte niemanden abschrecken seine gestalterischen Pläne zu verwerfen, nur weil es nicht (sofort) geht.