PHP Loginscript schlägt fehl

S

Speedy.

Gast
Hallo zusammen,

ich habe mit PHP ein Loginscript geschrieben, welches mittels PDO die Zugangsdaten aus einer MySQL-Datenbank abgleicht und bei Übereinstimmung den User zu der Mitgliederseite weiterleitet. Bei meiner lokalen XAMPP-Testumgebung klappt auch alles wunderbar, doch sobald ich die Dateien auf den Webserver lade und es dort teste, klappt es gar nicht mehr. Das Loginscript leitet die Anfrage direkt zur Loginseite zurück, ohne irgendwelche Angaben. Dann erscheint ein HTTP 500 Fehler, da die Loginseite nicht im selben Verzeichnis liegt. Woran kann das liegen, dass es nur auf dem Webserver nicht geht? Der Code von den anderen Seiten läuft wunderbar, auch in Kombination mit einer Datenbank gibt es sonst keine Probleme...

Das Script:
Code:
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
	session_start();
	$username = $_POST['username'];
	$password = $_POST['password'];

	$conn = new PDO('mysql:host=localhost;dbname=database', 'username', 'password');
	$result = $conn->prepare("SELECT * FROM credentials WHERE username = ? AND password = ?");
	$result->bindParam(1, $username);
	$result->bindParam(2, $password);
	$result->execute();

	if ($result->rowCount() > 0) {
		$_SESSION['username'] = $username;
		header('Location: ../members.php');
	} else {
              header('Location: ../login.php?error=true&error_code=Falsche Zugangsdaten');
        }
}

Die Mitgliederseite:
Code:
<?php 


session_start();
if (!isset($_SESSION['username'])) {
    header('Location: login.php?error=true&error_code=Sie müssen sich einloggen.');
    die();
} else {
    $logout_button = true;
}

include 'header.php';
?>

Danke und Grüße
Speedy
 
unabhängig davon: speicherst du da tatsächlich die Passwörter im Klartext? PFUI!
 
Also im oberen Script leitet das Loginscript bei fehlerhaften Benutzerdaten auf ein Loginscript im übergeordnetem Verzeichnis weiter...
 
Hm, Klartext? Nein, die werden später gehasht, aber das war aktuell nicht mein Problem, zu Testzwecken speichere ich die immer im Klartext. Den Fehler habe ich gerade selbst gefunden, ein Kollege hat die Zugangsdaten zur Datenbank geändert, darum kam der Fehler... Peinlich...
 
Zurück
Oben