Hi!
in my template.ss I add php code:
<?
echo'aaaaa';
?>
and this is correct. but if i write:
<?
print_r($_REQUEST['id']);
?>
I have the following error:
Parse error: syntax error, unexpected ';' Page.ss on line 9
why??
This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.
Please use forum.silverstripe.org for any new questions
(announcement).
The forum archive will stick around, but will be read only.
You can also use our Slack channel
or StackOverflow to ask for help.
Check out our community overview for more options to contribute.
Hi!
in my template.ss I add php code:
<?
echo'aaaaa';
?>
and this is correct. but if i write:
<?
print_r($_REQUEST['id']);
?>
I have the following error:
Parse error: syntax error, unexpected ';' Page.ss on line 9
why??
while I think you can use php commands in your ss templates I think you can only do it one at a time within a control, e.g.
<% sprintf(_t('IMAGE','%2.2s'),$Locale.RFC1766) %>
so I'd write each php command like this...
<% print_r($_REQUEST['id']) %>
but I am no expert.... I think what might be casuing this in fact is that you are tring to access an element in an array and it may be confusing $_REQ..... with a function... but in general I'd avoid php code in an *.ss template - it should go into the controller
Barry
There was a comment in another post saying that templates only get one pass, so if you're not dealing with a literal value then it may not work as intended, that could have been relating to something else though.
However, as Barry has said, templates are not really intended to have code inside them, just control blocks etc. to keep it simple. If you're trying to debug as you develop then write a debug function for your page controller to spit out all the $_REQUEST variables etc.
hth