Al mijn bestanden worden bij gebruik in index.php geincludeerd.
Voor de include staat dit:

<?php
//Set pagetitle
$pagetitle = "Taartjes, koekjes weet ik veel";
//There is the header!
theme_header();
?>


In de functie theme_header(); wordt
'<title>'.$pagetitle.'</title>';
naar het scherm geschreven.

Hoe zou ik deze title later nog kunnen veranderen, zonder javascript, want nu gebruik ik:

<?php
echo '<script language="javascript">
document.title = "'.$boardtitle.'";
</script>';
?>
Is dat niet precies wat ob_start(); ob_flaush(); doet? :P

[size=xsmall]Toevoeging op 30/10/2010 20:10:35:[/size]

Volstaat een globale $output variable die in index.php wordt geechoëd tussen de header en footer in?
Output buffering is niet de juiste methode om je header already sent foutmeldingen op te lossen aangezien je het eigenlijke probleem, een verkeerde logica in je scripts, niet oplost...

Een globale $output variabele kan volstaan, maar je zult vanzelf zien dat dit op een gegeven moment te beperkt is. Je wilt waarschijnlijk op meer vlakken kunnen bepalen hoe je output eruit ziet en dan is 1 enkele variabele niet handig. Dit is precies waar het gebruik van een template engine uitkomst biedt...
Oke, ik zal er eens naar kijken, maar voor nu volstaan ob_start(); en ob_flush();
Die functies bestaan immers ook niet voor niks, toch? D:
De keuze is aan jou, maar ik zou toch het probleem zelf oplossen en niet ob_start() als lapmiddel gebruiken.
Output buffering is er voor zoals het zegt bufferen van output.
Dat is dus wat anders dan het 'oplossen' van scriptfouten.
Je kunt altijd wel je cookies (headers w/e) voor je html krijgen.

Dus, om headers already sent fouten te voorkomen hoor je geen output buffer te gebruiken.
Het hoort niet, maar het werkt.
Het gaat hier om duizenden regels code.

Vanaf nu zal ik met nieuwe code de headers voor de output houden.

Reageren