Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

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.

Archive /

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo

from tarball release: Parse error: syntax error, unexpected T_OBJECT_OPERATOR


Go to End


5 Posts   5693 Views

Avatar
Shiny

Community Member, 7 Posts

22 April 2007 at 9:54pm

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /home/brenda/projects/silverstripe-v2.0/install.php on line 538

I'm on ubuntu edgy eft
apache 1.3.34-4.1
php 5.2.1-0
mysql 5.0.38-0

Avatar
Sean

Forum Moderator, 922 Posts

22 April 2007 at 10:17pm

Edited: 22/04/2007 10:18pm

I think this usually happens when Apache is using PHP4 instead of 5. Perhaps you have both 4 and 5 on there, but .php files are executed using PHP4. I know packages like MAMP for Mac have two versions of PHP, that you can switch around. Try adding this line to your .htaccess file for where SilverStripe is installed:

AddType application/x-httpd-php5 .php

Hope this helps!

Cheers,
Sean

Avatar
Shiny

Community Member, 7 Posts

23 April 2007 at 10:48am

You are correct - so i wrote a patch

at the top of install.php, detect the version, and die with a useful message if it's < 5.

http://darcs.coffee.geek.nz/silverstripe/core/install.php.patch
and move the classes to their own file (probably needs moving)
http://darcs.coffee.geek.nz/silverstripe/core/InstallRequirements.php

seems to me, writing a small bit of php4 compatible code in install.php will save you support requests later.

Avatar
Sigurd

Forum Moderator, 628 Posts

23 April 2007 at 11:43am

Edited: 23/04/2007 11:44am

Yeah we had changed the line a while ago but somehow this patch didn't get through to the 2.0.1 release

$query = DB::query("SELECT ID FROM SiteTree WHERE URLSegment = 'about-us'");
if(!$query->value()) {

(Please note that with the installer script parsing, it is now simply able to tell you to upgrade to PHP5. It doesn't permit you to install. But atleast you get instructions instead of a ambiguous PHP error).

PS: I commented on http://www.coffee.geek.nz/2007/04/22/silverstripe_review_attempt.html but either it now awaiting moderation, or went nowhere; I can't see my comment ;)

Avatar
Shiny

Community Member, 7 Posts

23 April 2007 at 11:49am

comment approved (the urls caught in the spam filter).

i'll wrangle apache a bit, and then post a followup.