PHP Login-Funktion geht nicht
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
angabe
behandelte ausnahme
benutzer
benutzername
code
datei
eingabe
falscher benutzer
falsches kennwort
form
formular
genutzte funktion
inhalt
kennwort
korrigieren
login
relevanter teil
schnellen antworten
ursache
-
Hi!
Ich habe bei einer PHP Login-Funktion ein Problem: Bei der letzten Seite (admin.php) steht, dass die Seite nicht verfügbar ist.
3 Dateien sind im Spiel: login.php, admin.php und config.php.
login.php (relevanter Teil)(Ja, ich weiß, dass das Formular HTML und nicht PHP ist):
<h1>Login</h1> <form name="Login" method="post" action="admin.php" enctype="multipart/form-data"> <b>Benutzer:</b> <input type="text" name="User" value=""/><br /> <b>Kennwort:</b> <input type="text" name="Password" value=""/><br /> <input type="submit" name="SubmitButton" value="Absenden"/> <input type="reset" name="ResetButton" value="Zurücksetzen"/> </form>
admin.php (relevanter Teil):
<h1>Admin</h1> <?php require_once ('config.php'); if (($_POST['User'] == LOGIN_BENUTZER) && ($_POST['Password'] == LOGIN_KENNWORT)) { ?> <!-- Zeige Admin Inhalt in HTML --> <?php } else { echo "Falscher Benutzer und/oder falsches Kennwort."; <a href="login.php">Zurück zum Login</a> } ?>
In config.php sind LOGIN_BENUTZER und LOGIN_KENNWORT definiert.
PS: Ist der richtige Forumbereich? Hoffentlich... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Servus,
nim bei "Login.php" mal das
raus, dann sollte der Fehler beseitigt sein.enctype= multipart/form-data
Multipart wird meines wissens nur für den Daieiupload o.Ä. benötigt -
Du vergleichst ja auch gerade ob deine Eingaben gleich "LOGIN_BENUTZER" und "LOGIN_PASSWORT" sind. Ich nehme aber mal an dass du die zwei als Variablen benutzen möchtest. Also solltes du in der config.php etwa soetwas haben:
$loginBenutzer = Benutzername; $loginPasswort = Passwort;
Und dann muss deine if-Abfrage so aussehen:
if (($_POST['User'] == $loginBenutzer) && ($_POST['Password'] == $loginPasswort)) { echo ' <!-- Zeige Admin Inhalt in HTML --> '; //PHP nicht unterbrechen also HTML-Ausgabe mit echo machen } else { echo "Falscher Benutzer und/oder falsches Kennwort."; <a href="login.php">Zurück zum Login</a> } ?>
Und lass bei dem Loginform das
weg...enctype="multipart/form-data"
Beitrag zuletzt geändert: 21.10.2010 10:33:47 von alfr3d -
Vielen Dank erstmal für die schnellen Antworten!
Das
hab ich jetzt mal weggelassen, aber es klappt trotzdem noch nicht.enctype="multipart/form-data"
@alfr3d: In config.php habe ich dies stehen:
<?php define ('LOGIN_BENUTZER', 'Benutzer'); define ('LOGIN_KENNWORT', 'Kennwort'); ?>
Ist das auch richtig?
Die Fehlermeldung lautet übrigens so:
"Seite derzeit nicht verfügbar
Die gewünschte Seite ist derzeit leider nicht verfügbar.
Mögliche Ursachen:
Es ist ein unerwarteter Serverfehler aufgetreten.
Die Angaben in einer .ht-Datei sind fehlerhaft, meist .htaccess
Eine genutzte Funktion steht nicht zur Verfügung.
Das PHP-Skript verursachte eine nicht behandelte Ausnahme.
Bitte korrigieren Sie Ihre Angaben und versuchen Sie es anschließend noch einmal. (Statuscode 500)"
Kurz: Es geht immer noch nicht. :(
Beitrag zuletzt geändert: 24.10.2010 10:18:46 von ranulf-streuff -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage