"Husk mig"-funktion i php med cookies

Tags:    php

Jeg er i gang med at lave en "husk mig"-funktion på min hjemmeside, så man kan vælge at blive logget ind automatisk i 14 dage.

Jeg har prøvet at få den til at sætte cookies i snart to timer, og enten sætter den dem ikke, eller også kommer den med den røvirriterende fejl: "Warning: Cannot modify header information - headers already sent by (output started at E:\\VertrigoServ\\www\\header.php:13) in E:\\VertrigoServ\\www\\functions.php on line 9

Jeg ved godt, at der ikke må være noget output før en setcookie(), men hvordan skal man ellers kunne sætte en cookie?

Her er der nogle udsnit af min kode:

Fold kodeboks ind/udKode 


Funktionen kage ser således ud:
Fold kodeboks ind/udKode 




3 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
prøv at sætte det her oppe i toppen af siden

<?

oB_start();

?>



Årsagen til at du får din header fejl er fordi du udsender noget data til brugeren, inden du sætter cookie'en. Det kan man ikke. Enten kan du rette din kode til så du er sikker på at du ikke udsender noget, eller også kan du bruge ob_start() og ob_flush(). Indsæt ob_start() allerførst i din kode og ob_flush() som det allersidste, så burde fejlen forsvinde.



Kan det f.eks. også skyldes, at jeg har en session_start(); inde i header.php, så den er den første til at udsende noget data?



t