I actually got an answer from my ISP support! They have register_globals set to off so my code needed to be amended from: if (isset($page_title): $title=urldecode($page_title); to: if (isset($_GET['page_title'])): $title=urldecode($_GET['page_title']); see http://www.php.net/manual/en/security.registerglobals.php Keith