header already sent
Ik heb dus het header already sent probleem. Ik weet dat ik niet mag verzenden voordat ik de sessie_start() uitvoer. Ik neem dus aan dat ik hiervoor dus ook niets mag includen.
maar dit is dus het probleem. vroeger had ik het probleem dat hij mijn klasses niet herkende als objecten als ik ze uit een array uit een $_SESSION wilde ophalen en dan had ik als oplossing hiervoor gevonden dat ik mijn klasses moest includen voor ik de sessie starte.
nu wilde dit lokaal goed lukken, ik had hier geen problemen mee, maar nu ik het op de server wil zetten doet ik daar ineens moeilijk over en zegt hij dus van header already sent.
dit is de error wanneer ik mijn klasses voor de sessie_start include
//////////////////////////////////////
Warning: session_start() [function.session-start]: Cannot send session cookie
- headers already sent by (output started at /home/reizeninleuven/public_html/klassen/GekozenWaarde.php:37)
in /home/reizeninleuven/public_html/index.php on line 18
Warning: session_start() [function.session-start]: Cannot send session cache
limiter - headers already sent (output started at /home/reizeninleuven/public_html/klassen/GekozenWaarde.php:37)
in /home/reizeninleuven/public_html/index.php on line 18
/////////////////////////////////////
dit is de error die ik krijg wanneer ik mijn klassen na mijn sessie_start() zet;
/////////////////////////////////////
Fatal error: berekenCatPOI() [<a href='function.berekenCatPOI'>function.berekenCatPOI</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition "GebCatWaarde" of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in /home/reizeninleuven/public_html/includes/extFuncties/interestedPOI.php on line 31
/////////////////////////////////////////
heeft iemand dit nog al gehad?
heeft iemand hier al eens een oplosssing voor gevonden?
lokaalt draai ik trouwens: Current PHP version: 5.2.5
op de server draait: Current PHP version: 5.2.0-8+etch10
kan het hier aan liggen?
Laat wat relevante code zien a.u.b.
Zelfs voor enige HTML output, zelfs een spatie die gezien wordt als HTML kan zelfs deze foutmelding genereren.
Fatal error, ga die eerst maar eens oplossen. De header-already-sent wordt mogelijk hierdoor veroorzaakt, je krijgt namelijk een foutmelding voor je kiezen en hierdoor loopt vervolgens de header van de sessie in het honderd.
elias schreef op 21.04.2008 15:52:
Ik weet dat ik niet mag verzenden voordat ik de sessie_start() uitvoer. Ik neem dus aan dat ik hiervoor dus ook niets mag includen.
Tuurlijk wel. Zolang je maar helemaal niks naar de browser stuurt.
die fatal error heb ik nog niet ontdekt. ben ik nog even mee bezig denk ik. Ik zal wat code late zien zodat jullie mss wat kunnen helpen.
php-commentaar weet ik niet of dat mag, maar html-commentaar is wel output
elias schreef op 21.04.2008 16:12:
Kan het dat je ook geen commentaar naar voor de session_start() mag gebruiken?
Alles mag, zolang er maar nul, noppes, niks, nada naar de browser gaat.
Ik was blijkbaar niet zo goed op de hoogte van dat feit wat wel en niet mocht verstuurd worden voor session_start(). Hier lag heel het probleem aan. Blijkbaar had ik dus ook commentaar in de klasses geschreven en aangezien deze moest geinclude worden voor de session gaf dit voor problemen.
Wat nu nog sterker was, was het feit dat zelfs een stomme witregel, na mijn ?> 'sluiten van klasse script' ook voor problemen zorgde maar dat deze regel dus niet opviel en pas toen ik goed de fout boodschap las doorhad dat er nog een "verborgen" regel was.
maar goed, alles is in orde en alvast bedankt voor jullie hulp.
Jouw probleem zat hem in de blanco regel ná het afsluiten van je php-script, die zorgt voor output. Vandaar dat het niet handig is om je php-script af te sluiten, je kunt zomaar output krijgen. Daarnaast is het niet nodig om een script af te sluiten.
elias schreef op 21.04.2008 16:51:
ok, heb het ondertussen uitgeklaard wat het probleem was.
Vertel....
elias schreef op 21.04.2008 16:51:
Ik was blijkbaar niet zo goed op de hoogte van dat feit wat wel en niet mocht verstuurd worden voor session_start(). Hier lag heel het probleem aan. Blijkbaar had ik dus ook commentaar in de klasses geschreven en aangezien deze moest geinclude worden voor de session gaf dit voor problemen.
Bullshit. Commentaar zorgt niet voor output; die wordt juist genegeerd door de server.
elias schreef op 21.04.2008 16:51:
Wat nu nog sterker was, was het feit dat zelfs een stomme witregel, na mijn ?> 'sluiten van klasse script' ook voor problemen zorgde maar dat deze regel dus niet opviel en pas toen ik goed de fout boodschap las doorhad dat er nog een "verborgen" regel was.
Daarom doe ik ook geen enkel PHP bestand afsluiten met een ?> of überhaupt
niet een include/require voor een session_start();. Gewoon na de session_start(); alle includes en requires.
verder is het ook zo dat ik mijn klasse niet kan include na mijn session_start(), want dan geeft ie een fout dat ik met een niet compleet object wil werken. En mijn oplossing die ik hiervoor had gevonden was dat ik dus mijn includes voor mijn session_start() moest doen.
over het sluiten van die klasses en scripts met de php tags heb ik ook nog een vraagje. moet je alleen je includes niet afsluiten? of gewoon niets?
ik vind het trouwens wel handig om deze tags <php? ?> te gebruiken, zo krijgt mijn code een mooi kleurtje in dreamweawer :)
sorry als ik met dit vorige iemand zou beledigen, ik ben dan ook nog maar een weekje of 4 bezig met dit php stuff
gebruiken. Alleen geef na ?> geen enter, dan kan er niks mis gaan.
Gewoon Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
ok. dit ga ik dus inderdaad gewoon blijven doen denk ik.