09. september 2005 - 21:46Der er
14 kommentarer og 1 løsning
Problem med header
Endnu et problem med header på eksperten! Vi får følgende fejl når vi forsøger at kalde det pågældende script: (Warning: Cannot modify header information - headers already sent by...) Vi har tjekket at der ikke er nogle linieskift før eller efter php tags´ene.
<?php if ($_COOKIE["auth"] == "1") { $msg = "<p>You are an authorized user.</p>"; } else { //redirect back to login form if not authorized header("Location: Test.php"); exit; } ?> <html> <head> <title>Test</title> </head> <body> <?php print "$msg"; ?> </body> </html>
He he... dårlig formulering :-) Prøver igen. Vi har en login funktion der opretter en cookie og ovenstående fil vil vi bare have til at tjekke at cookien er oprette/sat.
Ja, det er jo tekst før headeren. Du kunne jo overveje en anden gang at skrive de fejlmeddelelser, der rent faktisk kommer, så "eksperterne" ikke skal spilde deres tid mere end højst nødvendigt.
if (isset($_COOKIE["auth"]) && $_COOKIE["auth"] == "1") {
men det er en dårlig måde at sikre det på, da enhver kan lave sådan en cookie. Sessions er bedre.
erikjacobsen>> Sorry... det skal jeg nok være opmærksom på fremover. Regnede ikke med at en notice var så vigigt... hvorfor kalder de ikke for en warning :-)
Det er rigtigt at Notices ikke er så vigtige, men de tæller jo også som output før header, og derfor kan det stadig være vigtigt at fortælle om dem. En godt eksempel på snebold-effekten :)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.