Give script includes full access to prepared html, greatly simplifying
buffer logic and allowing potential substitutions. Assumes small pages
since all data flushes are delayed (can be worked around if ever needed).
+$extra = ob_get_clean();
http_response_code(404);
$request = htmlspecialchars($_SERVER['REQUEST_URI']);
echo "<h2>Pagina niet gevonden</h2>\n\n";
echo "<p>De gevraagde pagina <em>$request</em> bestaat niet.</p>\n\n";
http_response_code(404);
$request = htmlspecialchars($_SERVER['REQUEST_URI']);
echo "<h2>Pagina niet gevonden</h2>\n\n";
echo "<p>De gevraagde pagina <em>$request</em> bestaat niet.</p>\n\n";
+$extra = ob_get_clean();
http_response_code(500);
?>
<h2>Scriptfout</h2>
http_response_code(500);
?>
<h2>Scriptfout</h2>
<p>Er ging iets mis: <pre class="warn"><?php print $error; ?></pre>
Waarschijnlijk wordt hier aan gewerkt, maar als het probleem aanhoudt
geef het dan aan <a href="/contact">ons</a> door.
<p>Er ging iets mis: <pre class="warn"><?php print $error; ?></pre>
Waarschijnlijk wordt hier aan gewerkt, maar als het probleem aanhoudt
geef het dan aan <a href="/contact">ons</a> door.
function abort($status, $body) {
header("HTTP/1.1 $status");
print "$body\n";
function abort($status, $body) {
header("HTTP/1.1 $status");
print "$body\n";
+$body = ob_get_clean();
+
include_once './head.inc.php';
print "<header>\n";
include_once './head.inc.php';
print "<header>\n";
print $nav;
print "</header>\n\n";
print $nav;
print "</header>\n\n";
register_shutdown_function(function () {
include 'foot.inc.php';
print "</body></html>\n";
register_shutdown_function(function () {
include 'foot.inc.php';
print "</body></html>\n";
-$prepend = $append = '';
-if ($Page) {
- require "./$Page.php";
- if (ob_get_level() > 1) $append = ob_get_clean();
- if (ob_get_level() > 0) $prepend = ob_get_clean();
+ob_start(); # page body
+ob_start(); # inner html
+print '<div class="static">'."\n\n";
+
+$found = FALSE;
+if (file_exists("$Page$Args/index.html")) {
+ $found = include "./$Page$Args/index.html";
+}
+elseif (file_exists("$Page$Args.html")) {
+ $found = include "./$Page$Args.html";
-# prepare static contents
-include_once 'page.inc.php'; # global html
-if (file_exists("$Page$Args/index.html")) {
- $Args .= '/index';
+if ($Page) {
+ $found |= require "./$Page.php";
-if (!$Page and !file_exists("$Page$Args.html")) {
- # include not found
- $Args = '';
+# global html
+
+include_once 'page.inc.php';
+
+if (!$found) {
+ # no resulting output
if (isset($User) and $User['admin']) {
if (isset($User) and $User['admin']) {
+ require './template.html';
- $Page = '404';
- require "./$Page.php";
-# output prepared html
-
-print $prepend;
-
-print '<div class="static">'."\n\n";
-if (file_exists("$Page$Args.html")) {
-include "./$Page$Args.html"; # static contents
-}
-print "</div>\n\n";
-
-print $append;
-