Problem mit header
mustino
- php
0 Tobias Kloth0 rob0 TomIRL0 Jan L.0 Horst Nogajski
Hallo,
ich versuche in PHP mit Hilfe eines header auf eine andere Seite zu verweisen. Das Skript ist in einer HTML-Datei eingebettet.
Der Verweis sieht folgendermaßen aus:
.
.
.
if($_POST[bestellung]){
header('Location: testshop4.php?PHPSESSID=$sessnum');
exit;
}
?>
</HEAD>
Lokal auf dem Rechner funktioniert es auch, nur nicht online.
Online bekomme ich folgende Fehlermeldung:
Warning: Cannot add header information - headers already sent by (output started at /mnt/ja1/03/288/00000006/htdocs/Server/test3.php:9) in /mnt/ja1/03/288/00000006/htdocs/Server/test3.php on line 91
Ich wäre Euch dankbar, wenn Ihr mir helfen könntet.
MfG
Mustino
Hallo mustino,
if($_POST[bestellung]){
hast du eine Konstante 'bestellung' definiert oder meinst du $_POST['bestellung']? (siehe: Doku/Arrays)
header('Location: testshop4.php?PHPSESSID=$sessnum');
hinter 'Location:' muss eine vollständige URI stehen.
Warning: Cannot add header information - headers already sent by (output started at /mnt/ja1/03/288/00000006/htdocs/Server/test3.php:9) in /mnt/ja1/03/288/00000006/htdocs/Server/test3.php on line 91
PHP-FAQ, 28.13. Warning: Cannot add header information - headers already sent ...
Grüße aus Nürnberg
Tobias
Hallo,
Ihr seid mir zu schnell!
Ich glaube, daß ich besser nur noch auf Postings antworte, wenn ich hier
nachts unterwegs bin. Ansonsten ist das ja Zeitverschwendung ;-)
Gruß, Jan
Hello,
Gruß, Jan
Aber nicht aus M. oder?
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo,
Aber nicht aus M. oder?
M.?
Nein, aus Kaiserslautern, bzw. einem kleinen Städtchen in der Nähe.
Gruß, Jan
Hello,
Nein, aus Kaiserslautern, bzw. einem kleinen Städtchen in der Nähe.
Hätte ja sein können. Wahrscheinlichkeit irgendwie 1:370.000
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo.
Hätte ja sein können. Wahrscheinlichkeit irgendwie 1:370.000
Eigentlich 1:29.
MfG, at
Hello,
Hätte ja sein können. Wahrscheinlichkeit irgendwie 1:370.000
Eigentlich 1:29.
Wieso?
Gibts nur 30 'Jan L.' im deutschsprachigen Raum?
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo.
Wieso?
Gibts nur 30 'Jan L.' im deutschsprachigen Raum?
Vermutlich nicht, aber mindestens einen in "A.", mindestens einen in "B.". etc.
MfG, at
Hallo Jan,
Nein, aus Kaiserslautern, bzw. einem kleinen Städtchen in der Nähe.
hättest du das nicht 2,5 Monate früher sagen - da war ich mit dem Fahrrad in der Gegend (meine Oma wohnt auch in so einem Kaff) :-)
Grüße aus Nürnberg
Tobias
Hallo,
Nein, aus Kaiserslautern, bzw. einem kleinen Städtchen in der Nähe.
hättest du das nicht 2,5 Monate früher sagen - da war ich mit dem Fahrrad in der Gegend (meine Oma wohnt auch in so einem Kaff) :-)
Kann ich ja nicht ahnen. Wer kommt schon freiwillig nach KL, wenn nicht
zum Fußball? ;-)
Wenn du mal wieder in der Gegend bist, kannst du ja ne Mail schicken,
dann lad ich dich zu einem schönen Schoppen Pfalzwein ein.
Gruß, Jan
Hallo Jan,
Kann ich ja nicht ahnen. Wer kommt schon freiwillig nach KL, wenn nicht
zum Fußball? ;-)
Ich, ganz besonders gern am 15. August zum Bummeln und Einkaufen, wenn dieser Tag nicht auf ein Wochenende fällt *g*
Beruflich bin ich auch immer wieder gern in Kaiserslautern.
Freundliche Grüsse,
Vinzenz
Hallo,
Ich, ganz besonders gern am 15. August zum Bummeln und Einkaufen, wenn dieser Tag nicht auf ein Wochenende fällt *g*
Lustig, die ganzen Leutchen aus KL fahren zum Bummeln und Einkaufen
immer nach Mannheim oder Saarbrücken.
Beruflich bin ich auch immer wieder gern in Kaiserslautern.
Ja, wenn man nicht gerade bei Opel oder Pfaff arbeitet, tut sich da ja
in letzter Zeit auch einiges.
So schlecht lebt es sich hier wirklich nicht. Wenn ich im Herbst mit
einem schönen Korb voller Steinpilze aus dem Pfälzerwald, der gleich
neben meiner Haustür anfängt, zurückkomme, bin ich mit meiner Wohnlage
immer besonders zufrieden.
Gruß, Jan
Hallo Jan,
Kann ich ja nicht ahnen. Wer kommt schon freiwillig nach KL, wenn nicht
zum Fußball? ;-)
am ersten Tag (7.8.) meiner Tour nach KL hat mich einer gefragt, ob zum Spiel Nbg-Kl nicht etwas spät dran wäre :-)
Wenn du mal wieder in der Gegend bist,
Das wird wohl erst wieder in der Adventszeit sein - beim nächsten Verwandschaftsbesuch :-)
Grüße aus Nürnberg
Tobias
Vorerst danke für die schnelle Antwort.
hast du eine Konstante 'bestellung' definiert oder meinst du $_POST['bestellung']?
Es ist keine Konstante.
header('Location: testshop4.php?PHPSESSID=$sessnum');
hinter 'Location:' muss eine vollständige URI stehen.
Ich habe die vollständige URL eingefügt fuktioniert aber trotzdem nicht online. Müsste ich URL nach ...testshop4.php aufhören?
Gruß
Mustino
Vorerst danke für die schnelle Antwort.
hast du eine Konstante 'bestellung' definiert oder meinst du $_POST['bestellung']?
Es ist keine Konstante.
Doch...
header('Location: testshop4.php?PHPSESSID=$sessnum');
hinter 'Location:' muss eine vollständige URI stehen.Ich habe die vollständige URL eingefügt fuktioniert aber trotzdem nicht online. Müsste ich URL nach ...testshop4.php aufhören?
Muah hast Du gelesen was Dir geschrieben wurde?
Übrigens Asche auf mein Haupt, dass ich einen solchen Fehler nicht erkannt habe.
Übrigens mustino, ich hoffe Du programmierst diesen Shop nur mal so zum Spaß wenn Du mit dieser Programmierleistung Geld verdienen möchtest, na dann Gute Nacht.
TomIRL
Sorry,
die Antwort von mir war zeitgleich mit Euren Antworten. Es funktioniert jetzt.
Danke für Eure Mühe!
Mustino
P.S. Der Grund für den header und der Session-id am Ende ist, dass nach dem Ablauf des Skriptes durch einen Formular-Button auf eine andere Seite verwiesen werden sollte. Die neue Seite jedoch hat die Session-ID von der letzten Seite nicht übernommen. Obwohl start_session() gesetzt ist.
if($_POST[bestellung])
Das sollte $_POST['bestellung'] heissen, sonst wird erst nach der Konstanten bestellung gesucht.
header('Location: testshop4.php?PHPSESSID=$sessnum')
Hier solltest du einen kompletten URL angeben (mit http://), auch wenn's so trotzdem oft funktioniert...
Warning: Cannot add header information - headers already sent by
Die Header müssen immer als aller erstes an den Browser gesendet werden. Wenn vor deinem ersten PHP-Bereich auch nur eine Leerzeile steht, dann wird diese Leerzeile an den Browser geschickt (mit Headern vorweg) und Du kannst keine neuen Header mehr versenden.
Sieh also zu, daß deine Header als allererstes versendet werden.
header('Location: ... funktioniert nicht mehr, wenn es bereits vorher eine andere Ausgabe im Browser gab (oder wenn Du vorher bereits eine Session gestartet hast, dann wird nämlich versucht, ein Session-Cookie zu setzen).
Gruß, rob
Lokal auf dem Rechner funktioniert es auch, nur nicht online.
Online bekomme ich folgende Fehlermeldung:Warning: Cannot add header information - headers already sent by (output started at /mnt/ja1/03/288/00000006/htdocs/Server/test3.php:9) in /mnt/ja1/03/288/00000006/htdocs/Server/test3.php on line 91
zunächst:
Du mußt die vollständige URL angeben alles andere kann funktionieren muß aber nicht.
Ansonsten würde ich mal ein bischen probieren...
Vielleicht liegts an des Session id..
Macht für mich rgendwie auch keinen Sinn eine Sesion ID vorher festuzulegen? btw was machst Du da überhaupt.
TomIRL
Hallo,
if($_POST[bestellung]){
Da 'bestellung' kaum eine Konstante sein wird, sollte die Zeile wohl
if ($_POST['bestellung']) {
lauten.
header('Location: testshop4.php?PHPSESSID=$sessnum');
Bei einem Location-Header mußt du eine vollständige URL angeben.
Lokal auf dem Rechner funktioniert es auch, nur nicht online.
Hast du lokal vielleicht 'output-buffering' (oder so ähnlich)
aktiviert?
Online bekomme ich folgende Fehlermeldung:
[...]
Wenn du einen HTTP-Header an den Client schicken willst, darf vorher
nichts anderes (außer anderen Headern) gesendet werden. Du scheinst
aber vorher zu versuchen HTML zu senden.
Gruß, Jan
Hallo,
die meisten Fehler sind ja schon benannt worden, mit Ausnahme von:
header('Location: testshop4.php?PHPSESSID=$sessnum');
Es kann wohl kaum sein das alle Besucher des Shops die gleiche Session nutzen, die auch zudem 100%ig nicht auf deinem Server existiert!
Variablen in 'einfachen' Anführunszeichen werden nicht geparst sondern als Strings ausgegeben! *lol*
Gruß,
Horst