session_start() problem

Tags:    php

Jeg har den typiske

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at SITE/index.php:1) in SITE:functions.php on line 2

Kan ikke lige se hvor fejlen er da min index ser sådan her ud i toppen:

Fold kodeboks ind/udKode 


og functions:
Fold kodeboks ind/udKode 


Har kigget efter: white-spaces og sender ikke noget output inden session_start(), men der må jo givetvis være noget. Det eneste sted der står session_start() er i functions.php som altid bliver hentet øverst i filer.



Indlæg senest redigeret d. 13.08.2009 17:43 af Bruger #9485
5 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Lad være med at include den, og skriv den direkte i toppen af filen.



Det kan måske tænkes at der ligger en UTF-8 BOM i starten af filen.

Prøv at gemme filen uden BOM...
se her for beskrivelse af BOM: http://unicode.org/faq/utf_bom.html#bom1



Hej allesamme,

Dennis, du skal pröve dette her...


Lav en PHP fil som indeholder dette - kun dette her...


Fold kodeboks ind/udKode 


Det er et lille simpelt stykke kode, men det er mere for at jeg kan evt. fölge med i din kode. Når du har afprövet dette og vi hved at det ikke er din server opsätning så kikker vi på in applikation.

Mange fejl i PHP som omhandler session findes nemlig i PHP.ini opsätningen eller at du sender noget data til in browser inden at PHP's session handler setter en cookie for din session.

Man kan kan afhjälpe fejl og E_NOTICES i PHP hved at anvende PHP's Output Buffer, ob_start();.

Med denne funktion kan du nemlig sende headers fra dit script, også efter at du må ha' skrevet til siden fordi at ob_start() sörger for at intet bliver skrevet til siden för efter at scripted er afviklet.

Man får i övrigt også en "pän" opmalning af HTML delen for brugeren på denne måde. :-)

Pröv koden og lad og kikke på det :-)





Giver stadig fejl :/

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /index.php:1) in /index.php on line 2
?

nu ser det sådan ud i index.php:
Fold kodeboks ind/udKode 


og har selvfølgelig slettet session_start i den anden fil.

Edit: Det kom efter jeg slettede en function som ikke opførte sig som den skulle. Før så den sådan her ud:

Fold kodeboks ind/udKode 


og så fjernede jeg koden i functions.php til GatherStats():



Indlæg senest redigeret d. 13.08.2009 17:57 af Bruger #9485
Ja, så skete der noget meget mystisk. Jeg sad ved en anden computer i går da jeg ødelagde mit graffikkort i min egen, men nu har jeg fået min egen op med et gammelt skrammel kort, loggede på ftp for at teste de ting der er blevet sagt, og nu er der ingen fejl overhovedet.

Lige nu bliver session_start() hentet i functions.php og ja som sagt, ingen problemer. Takker for de mange svar, selvom det er lidt irrigeterende at jeg ikke ved hvad fejlen var skulle det ske igen :D



t