header() virker ikke

Tags:    php

Hejsa..

Jeg sidder med et lille problem:
Jeg kan ikke få header() til at virke, jeg får denne fejl:

Warning: Cannot modify header information - headers already sent by (output started at phpfilen.php:11) in phpfilen.php on line 27

hvor linje 27 er:

header("Location: nyfil.php");

Og ja, jeg er sikker på at filen den skal vise en videre til eksistere.. ;)
Håber der er nogen der kan hjælpe mig..
Søren Gregersen -
http://tlk.frac.dk

[Redigeret d. 20/12-05 16:59:40 af Søren Gregersen]



Det er fordi header informationerne allerede er sendt en gang....



Det er fordi header informationerne allerede er sendt en gang....


Hvornår?

Søren Gregersen -
http://tlk.frac.dk



Det er fordi du har udskrevet indhold på siden, før headeren er sendt.

Når en hjemmeside sendes over internettet fra en server til en browser, sendes headernes først, efterfulgt at to linjeskift, efterfulgt af selve hjemmesiden.

Eksempel: http://www.jesperkristensen.dk/headers.php?url=http%3A%2F%2Fudvikleren.dk%2F

Hvis du fx allerede har udskrevet <html><head>... , kan du ikke udskrive en header.



Det er fordi du har udskrevet indhold på siden, før headeren er sendt.

Når en hjemmeside sendes over internettet fra en server til en browser, sendes headernes først, efterfulgt at to linjeskift, efterfulgt af selve hjemmesiden.

Eksempel: http://www.jesperkristensen.dk/headers.php?url=http%3A%2F%2Fudvikleren.dk%2F

Hvis du fx allerede har udskrevet <html><head>... , kan du ikke udskrive en header.


Måske den skulle ligges ind som et FAQ? den er i hvert fald en der er mange der har problemmer med. Måske der bare skulle laves et link til din header artikel? den forklare jo fejlen - ellers kunne det jo være lidt copy-paste fra artiklen :)

Hilsen

Martin Dybdal (Dybber)
Blog: http://dybber.dk/blog/



Måske den skulle ligges ind som et FAQ? den er i hvert fald en der er mange der har problemmer med. Måske der bare skulle laves et link til din header artikel? den forklare jo fejlen - ellers kunne det jo være lidt copy-paste fra artiklen :)


Der er faktisk allerede en faq-post om emnet, men måske man skulle lave en om header() generelt, og ikke kun header('Location:') - jeg modtager gerne forslag.

Det er dog mit indtryk at folk ikke læser de faqs, der er...

Hvis nogen har nogle bedre og mere fængende titler til de eksisterende faqs, så post dem endelig.



Det er fordi du har udskrevet indhold på siden, før headeren er sendt.

Når en hjemmeside sendes over internettet fra en server til en browser, sendes headernes først, efterfulgt at to linjeskift, efterfulgt af selve hjemmesiden.

Eksempel: http://www.jesperkristensen.dk/headers.php?url=http%3A%2F%2Fudvikleren.dk%2F

Hvis du fx allerede har udskrevet <html><head>... , kan du ikke udskrive en header.


Jamen, hvad gør jeg så hvis jeg nu fx. skal have den til at vise en tilbage hvis en værdi ikke er sant?

fx:
if($kanp){
echo "Du har trykker på knappen..!";
} else{
header("Location: tilbage.php");
}

Hvad gør jeg så?
Søren Gregersen -
http://tlk.frac.dk



i stedet for:

Fold kodeboks ind/udKode 



kan du:

Fold kodeboks ind/udKode 





i stedet for:

Fold kodeboks ind/udKode 



kan du:

Fold kodeboks ind/udKode 



Eller man kan bruge

Fold kodeboks ind/udKode 


Hvis du f.eks. har include-filer med banner og menu, så kan der opstå problemer i forhold til headers, og man kan bruge denne metode :)

- Mads



t