• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Wo liegt der Fehler?

Status
Für weitere Antworten geschlossen.

brainiac

Neues Mitglied
Hi! Ich wollte fragen, wo der Fehler liegt:
PHP:
<html>
<head>
<title>7b</title>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<?php
$passwort = "Passw1";
$gast = "Passw2";
$admin = "Passw3";
if ($_POST['pw'] == $passwort) {
    header ("Location: 7b/index.php");
}
elseif ($_POST['pw'] == $gast) {
    header ("Location: gast/index.htm");
}
elseif ($_POST['pw'] == $admin) {
    header ("location: development/index.php");
}
else {
    echo "<div id='main'><h1>Falsches Kennwort</h1>
    <p>Falsches Kennwort. Wenn Sie Gast sind, nehmen Sie das Kennwort Gast.</p>
    </div>";
}
?>
</body>
</html>
Wenn die richtigen Passwörter eingegeben werden dann kommt das:
Warning: Cannot modify header information - headers already sent by (output started at /users/mkportal/www/verarbeitung.php:7) in /users/mkportal/www/verarbeitung.php on line 18
 
Du darfst die Funktio header() (genau wie session_start), nicht verwenden wenn vorher schon was ausgegeben wurde...

Stell mal den PHP Codeteil vor dem HTML Code.



LG ;)
 
Benutze statt header() einfach:

HTML:
<meta http-equiv="refresh" content="0; URL=http://blabla.de">

MfG Icy
 
nein Icy ^^

PHP:
<?php

$passwort = "Passw1";
$gast = "Passw2";
$admin = "Passw3";
if ($_POST['pw'] == $passwort) {
    header ("Location: 7b/index.php"); exit;
}
elseif ($_POST['pw'] == $gast) {
    header ("Location: gast/index.htm"); exit;
}
elseif ($_POST['pw'] == $admin) {
    header ("Location: development/index.php"); exit;
}

?>
<html>
<head>
<title>7b</title>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<div id='main'><h1>Falsches Kennwort</h1>
    <p>Falsches Kennwort. Wenn Sie Gast sind, nehmen Sie das Kennwort Gast.</p>
    </div>
</body>
</html>
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben