PHP Bulletin Board Home
News About Home
Features of phpBB Test drive phpBB Downloads Support for phpBB The phpBB Community Styles for customising phpBB 3rd party modifications to phpBB

Support Home | Knowledge Base Home | Submit Article | Search Articles | Browse Articles
 Parse error: eval()'d code 
Description: How to fix 'eval()'d code' errors with templates.
Author: Ladd
Date: Wed Oct 30, 2002 3:37 pm
Type: HowTo
Keywords: parse error, template.php, comment, BEGIN, END, eval()'d code
Category: Styles
If you are trying to add a script such as hitbox, fastcounter or anything that has <!-- BEGIN WHATEVER CODE --> and <!-- END WHATEVER CODE --> statements in it to .tpl file, you may be recieving such errors as

Quote:
Parse error: parse error, unexpected T_STRING in /root/phpBB/includes/template.php(127) : eval()'d code on line 50


This is due to how phpBB handles <!-- BEGIN --> and <!-- END -->'s. The template system is setup to interpret these in special ways, such as loops and switches, and not having such an object between them results in parse errors.

So, to fix it delete the 'BEGIN' and 'END' in your HTML comments. You should also write all of your comments in lower case. ex:

Code that gives you errors:

Code:
<!-- BEGIN FASTCOUNTER CODE -->
<a href="http://member.bcentral.com/cgi-bin/fc/fastcounter-login?2440090" target="_top">
<img border="0" src="http://fastcounter.bcentral.com/fastcounter?2440090+4880187"></a>
<!-- END FASTCOUNTER CODE -->
<br>
<!-- BEGIN FASTCOUNTER LINK -->
<font face="arial" size="1">
<a href="http://fastcounter.bcentral.com/fc-join" target="_top">FastCounter by bCentral</a></font><br>
<!-- END FASTCOUNTER LINK -->


Will be changed to this:

Code:
<!-- fastcounter code -->
<a href="http://member.bcentral.com/cgi-bin/fc/fastcounter-login?2440090" target="_top">
<img border="0" src="http://fastcounter.bcentral.com/fastcounter?2440090+4880187"></a>
<!-- fastcounter code -->
<br>
<!-- fastcounter code -->
<font face="arial" size="1">
<a href="http://fastcounter.bcentral.com/fc-join" target="_top">FastCounter by bCentral</a></font><br>
<!-- fastcounter code -->


That will solve the parsing errors.



If that is not the problem then you might be using switches incorrectly. Every switch should be on its own line.

This is NOT correct code:
Code:
some html code <!-- BEGIN switch_user_online -->
some other html code
This code is not correct before there is some text before switch. This is correct code:
Code:
some html code
<!-- BEGIN switch_user_online -->
some other html code


edited by cyberalien - added second part of article

Username: Password:
News | Features | Demo | Downloads | Support | Community | Styles | Mods | Links | Merchandise | About | Home
 © Copyright 2002 The phpBB Group.