icowden Posted October 22, 2006 Share Posted October 22, 2006 Hi all,I have installed php-calendar 0.10.5 as a basic calendar. I know very little about PHP by the way. The index.php file defines various items and then includes 3 files:-require_once($phpc_root_path . 'includes/calendar.php');require_once($phpc_root_path . 'includes/setup.php');require_once($phpc_root_path . 'includes/globals.php');Within calendar.php there is a function to define the head of the document that will be output in setup.php.function create_xhtml($rest){ global $config, $phpc_script; $output = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\"\n" ."\"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">\n"; $html = tag('html', attributes('xml:lang="en"'), tag('head', tag('title', $config['calendar_title']), tag('meta', attributes('http-equiv="Content-Type"' .' content="text/html;' .' charset=iso-8859-1"')), tag('link', attributes('rel="stylesheet"' .' type="text/css" href="' .$phpc_script .'?action=style"')), '<!--[if IE]><link rel="stylesheet" ' .'type="text/css" href="all-ie.css" />' .'<![endif]-->'), tag('body', tag('h1', $config['calendar_title']), navbar(), $rest, link_bar())); return $output . $html->toString();}Now rather than having to rather laboriously go through my whole site header which uses CSS, styles and 4 positioned layers, I wondered if there was an easier way to do this. I tried including the header part as an html file without closing tags (calendarpage.inc), but this generates an error once setup.php is reached, informing me that sessionstart() has a problem as the page has already begun.Has anyone any ideas how I can rewrite the function above, or remove it and use an include to generate the header part of the php? I have attached the php files mentioned.thanks very much for any help!Iain [attachment deleted by admin] Quote Link to comment https://forums.phpfreaks.com/topic/24782-including-html-the-hard-way/ Share on other sites More sharing options...
btherl Posted October 23, 2006 Share Posted October 23, 2006 You can use output buffering.. like this:[code]ob_start();include('header.html');$header = ob_get_clean();[/code]I'm pretty sure that'll do what you want. Then you have your HTML in a string. Quote Link to comment https://forums.phpfreaks.com/topic/24782-including-html-the-hard-way/#findComment-112994 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.