Cannot send session cookie - headers already

Tags:    php

<< < 12 > >>
Ja, som overskriften beskriver så fint selv er det altså denne fætter af et problem der irriterer mig lige for tiden.

Hele fejlen kommer her:

Warning: Cannot send session cookie - headers already sent by (output started at /customers/dronerax.dk/dronerax.dk/httpd.www/forside.php:1) in /customers/dronerax.dk/dronerax.dk/httpd.www/login/check_login.php on line 5

Min umiddelbare erfaring er at den smider dette problem i hovedet af mig hver gang jeg laver et script der skal sende session cookie afsted i samme og have stylesheet på samme tid fordi når denne sætning indgår: '<link rel="stylesheet" type="text/css" href="dronerax.css">' er fejlen der, men når den ikke er der... Ja så er fejlen der heller ikke.

Jeg ved ikke om det er mig der fatter bjælde, men det er bare ret så irriterende.

Skriv endelig hvis i har brug for mere information omkring scriptet før i kan hjælpe.

Jakob



13 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Som de andre har fortalt skal session kald sendes inden man udskriver noget som helst til browseren.

Dvs.
Fold kodeboks ind/udKode 

er ikke tilladt

Fold kodeboks ind/udKode 

er heller ikke tilladt

Der findes dog en måde hvor man kan gøre så man kan disse ting

aller aller aller øverst i dit dokument inden du gør noget som helst andet skriver du:
Fold kodeboks ind/udKode 


og aller aller aller nederst skriver du:
Fold kodeboks ind/udKode 


dette virker for mig (for det meste da) :D

[B]Bemærk:[/B] alt dette gælder også for header() funktionen

Med venlig Hilsen

Martin Dybdal (Dybber)



Altså du sender en session der inderholder '<link rel="stylesheet" type="text/css" href="dronerax.css">'? Prøv at udskifte " med ' - sådan her:

'<link rel='stylesheet' type='text/css' href='dronerax.css'>'




Ja, som overskriften beskriver så fint selv er det altså denne fætter af et problem der irriterer mig lige for tiden.

Hele fejlen kommer her:

Warning: Cannot send session cookie - headers already sent by (output started at /customers/dronerax.dk/dronerax.dk/httpd.www/forside.php:1) in /customers/dronerax.dk/dronerax.dk/httpd.www/login/check_login.php on line 5

Min umiddelbare erfaring er at den smider dette problem i hovedet af mig hver gang jeg laver et script der skal sende session cookie afsted i samme og have stylesheet på samme tid fordi når denne sætning indgår: '<link rel="stylesheet" type="text/css" href="dronerax.css">' er fejlen der, men når den ikke er der... Ja så er fejlen der heller ikke.

Jeg ved ikke om det er mig der fatter bjælde, men det er bare ret så irriterende.

Skriv endelig hvis i har brug for mere information omkring scriptet før i kan hjælpe.



Med normale cookies skal der står cookie skriveren (den som skriver i cookien) aller øverst i dokumentet.
Men sessions, skal der stå: session_start(); aller øverst i dokumentet på alle sider før det virker :)

- Pelle Ravn

---------------
Never trust an operating system you don\\'t have sources for! USE LINUX :)
---------------


[Redigeret d. 17/05-04 22:02:09 af Pelle Ravn]



Med normale cookies skal der står cookie skriveren (den som skriver i cookien) aller øverst i dokumentet.
Men sessions, skal der stå: session_start(); aller øverst i dokumentet på alle sider før det virker :)


Jeg bruger aldrig noget i toppen af mine cookie baserede sider ?
Og kan du give et eksempel på skriveren?

Jeg er fuldt ud enig med dig angående sessions.

// Kasper



Jeg bruger aldrig noget i toppen af mine cookie baserede sider ?
Og kan du give et eksempel på skriveren?


Du skal da skrive det øverst, ellers fatter den hat... har lavet et login system hvor det først virkede da jeg havde sat den der op.

Men det var bare sådan jeg fik det til at virke, skal ikke kunne sige om jeg gjorde noget andet for at det virkede ;)

- Pelle Ravn
---------------
Never trust an operating system you don\\'t have sources for! USE LINUX :)
---------------




Med normale cookies skal der står cookie skriveren (den som skriver i cookien) aller øverst i dokumentet.
Men sessions, skal der stå: session_start(); aller øverst i dokumentet på alle sider før det virker :)

Jeg bruger aldrig noget i toppen af mine cookie baserede sider ?
Og kan du give et eksempel på skriveren?

Jeg er fuldt ud enig med dig angående sessions.

// Kasper


Måden jeg har lavet det på er at jeg har et "design" hvorpå jeg bare har funktionen:

<? if($side) { include ($side); } else { include ("news/news.php"); } ?>

på denne "design-side" er stylesheet'ed inkluderet for ikke at skulle lave alle de skrifttyper og alt det pjat på alle siderne... Hvis du forstår... Derfor kommer setningen med stylesheetet altid med ind i scriptsne når jeg bruger dette.



Måden jeg har lavet det på er at jeg har et "design" hvorpå jeg bare har funktionen:

<? if($side) { include ($side); } else { include ("news/news.php"); } ?>

på denne "design-side" er stylesheet'ed inkluderet for ikke at skulle lave alle de skrifttyper og alt det pjat på alle siderne... Hvis du forstår... Derfor kommer setningen med stylesheetet altid med ind i scriptsne når jeg bruger dette.


Kan sige så meget at det er også lidt den måde jeg laver mine sider på. Men det er altså ikke fordi der er både en style og en session. Det er fordi at du skal starte dine sessions, (faktisk på den side hvor du includer $side, bare ALLER øverst (selvfølgelig inden for <? ?> ;)

- Pelle Ravn
---------------
Never trust an operating system you don\\'t have sources for! USE LINUX :)
---------------




Hvis du har register_globals On, så er "if($side) { include ($side); }" en grimmert.
Hvis det fx står på index.php, så kan man jo åbne:
index.php?side=index.php
Og så vil index.php bliver inkluderet i index.php som vil blive inkluderet i index.php som vil blive inkluderet i index.php som vil blive inklu...... :)



/AC



Hvis du har register_globals On, så er "if($side) { include ($side); }" en grimmert.
Hvis det fx står på index.php, så kan man jo åbne:
index.php?side=index.php
Og så vil index.php bliver inkluderet i index.php som vil blive inkluderet i index.php som vil blive inkluderet i index.php som vil blive inklu...... :)


LOL :P
Den har jeg ikke tænkt over før :P
Har du prøvet den ? ;)

- Pelle Ravn
---------------
Never trust an operating system you don\\'t have sources for! USE LINUX :)
---------------




Hvis du har register_globals On, så er "if($side) { include ($side); }" en grimmert.
Hvis det fx står på index.php, så kan man jo åbne:
index.php?side=index.php
Og så vil index.php bliver inkluderet i index.php som vil blive inkluderet i index.php som vil blive inkluderet i index.php som vil blive inklu...... :)

LOL :P
Den har jeg ikke tænkt over før :P
Har du prøvet den ? ;)

- Pelle Ravn
---------------
Never trust an operating system you don\\'t have sources for! USE LINUX :)
---------------

Har prøvet den, og det har jeg også meget sjovt med :D:D:D



<< < 12 > >>
t