Custom PHP Header returning Parse Error Custom PHP Header returning Parse Error
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Custom PHP Header returning Parse Error

Started by BrianD, November 04, 2005, 09:02:33 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

BrianD

I attempted to create a custom PHP header as described in the FAQ.  Here is my code from theme.php


function pageheader($section, $meta = '')
{
   global $CONFIG, $THEME_DIR;
   global $template_header, $lang_charset, $lang_text_dir;

   if(empty($custom_header)){
      include('/menu/menu.php');
      static $custom_header = ob_get_contents();
      ob_clean();
   }

   header('P3P: CP="CAO DSP COR CURa ADMa DEVa OUR IND PHY ONL UNI COM NAV INT DEM PRE"');
   user_save_profile();

   $template_vars = array(
      '{LANG_DIR}' => $lang_text_dir,
      '{TITLE}' => $CONFIG['gallery_name'].' - '.$section,
      '{CHARSET}' => $CONFIG['charset'] == 'language file' ? $lang_charset : $CONFIG['charset'],
      '{META}' => $meta,
      '{GAL_NAME}' => $CONFIG['gallery_name'],
      '{GAL_DESCRIPTION}' => $CONFIG['gallery_description'],
      '{MAIN_MENU}' => theme_main_menu(),
      '{ADMIN_MENU}' => theme_admin_mode_menu(),
      '{CUSTOM_HEADER}' => $custom_header,
   );

   echo template_eval($template_header, $template_vars);
}


My custom header is off the root in the menu directory and named menu.php.  If I run menu.php separately it runs fine.

Here is the error I am recieveing:

Parse error: parse error, expecting `','' or `';'' in e:\html\domains\kendrabrian.com\wwwroot\pictures\themes\KendraBrian\theme.php on line 821

Line 821 is:
static $custom_header = ob_get_contents();

I cannot see where I am went wrong or what the error is telling me.

Thanks
Brian D

Nibbler

Change

static $custom_header = ob_get_contents();

to

static $custom_header;
$custom_header = ob_get_contents();