ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
317
317
EMPFEHLEN
-
Hallo,
also ich bin neu auf dem Gebiet PHP und beschäftige mich erst seit einigen Tagen intensiv damit. Nun steh ich vor meinem ersten Problem:
HTML-Code:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">PHP-Code:<?php
if (isset($pw)) {
if ($pw=="Na7x") {
header("Location: ziel1.html");
}
elseif ($pw=="Na6x") {
header("Location: ziel2.html");
}
else {
header("Location: nase.html");
}
}
?>Also wenn ich das ausführe kommt folgende Meldung im Browser:HTML-Code:<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Unbenanntes Dokument</title> </head> <body> <form action="<?php echo $PHP_SELF; ?>" method="post"> <input type="text" name="pw"> <input type="submit" value="Senden"> </form> </body> </html>
Warning: Cannot modify header information - headers already sent by (output started at /srv/www/htdocs/web16/html/bernd/pass1.php:2) in /srv/www/htdocs/web16/html/bernd/pass1.php on line 11
Was mach ich falsch? Es hilft auch nix wenn ich
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
in der ersten Zeile weglasse.
ps: Sorry das ich wegen so ner kleinigkeit gleich ein neues Thema eröffne aber ich hab darüber nix im Forum gefunden!
Vielen Dank für jede Antwort!
Bernd
-
Ich nehme das mal wörtlich.
Zitat von web16f2
Dann ist da Dein Fehler.
Es darf nichts, rein gar nichts, auch kein Lerzeichen oder Zeilenumbruch, im HTML-Teil sein, bevor header() aufgerufen wird.
Es darf auch nichts per echo oder sonstwie ausgegeben werden.
Gruß hpvw
-
HTTP-Header – nicht etwa PHP-Header – werden vor Versenden des eigentlichen Inhalts (z. B. ein HTML-Dokument) gesandt und beschreiben den nachfolgenden Inhalt (beispielsweise Inhaltstyp, -kodierung, etc.). Daher müssen auch in PHP-Skripten zuerst alle nötigen HTTP-Header gesandt werden, bevor der eigentliche Inhalt ausgegeben wird.
Ich glaube, mittlerweile speichert PHP selbstständig die Ausgabe zwischen und sendet zuerst alle HTTP-Header, auch wenn diese erst am Ende des PHP-Skriptes beschrieben werden und bereits eine Ausgabe mittels echo stattfand.
-
21.05.05 12:34 #4
Also bei mir macht das PHP nicht. Vielleicht musste das irgendwo einstellen. Du kannst die Ausgabe aber immer Manuell stauern.
Du führst http://de3.php.net/manual/de/function.ob-start.php aus. Das speichert jede Ausgabe im internen Puffer. Sobald du dann in PHP alle Ausgaben festgelegt hast gibst du alles auf einmal mit http://de3.php.net/manual/de/function.ob-end-flush.php aus.
-
Vielen Dank für eure Hilfe! Jetzt gehts! Ich hab die erste Zeile
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
einfach weggelassen und mit php ganz oben angefangen. Dann geht alles.
Gruß
B. Wächter
-
Wieso lässt du die Dokumenttyp-Deklaration weg? Setze einfach den PHP-Teil an den Anfang des Skriptes.
Ähnliche Themen
-
HEADER - Problem
Von Lektor21 im Forum PHPAntworten: 10Letzter Beitrag: 09.02.08, 13:29 -
Problem mit header()
Von Fxice im Forum PHPAntworten: 9Letzter Beitrag: 02.05.05, 18:50 -
Cookie Problem (kein Header Problem!)
Von MC-René im Forum PHPAntworten: 4Letzter Beitrag: 31.08.04, 13:06 -
Header Problem
Von i-mehl im Forum PHPAntworten: 2Letzter Beitrag: 27.01.04, 17:43 -
Setcookie - Header problem + cookie problem
Von Subwoover im Forum PHPAntworten: 1Letzter Beitrag: 25.08.02, 19:27





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren